No.5ベストアンサー
- 回答日時:
>Datediff("yyyy",,)
の"yyyy"は関数に与える引数で日付を表すものではありません
(この引数はテキスト型で与えるという仕様です)
>#yyyy#
も日付を表すものではありませんよ
日付を表すには
#2008/08/25#
のように中が日付文字列でなければだめです
DateDiffでも日付を取る第2,3引数には下のように日付を与えます
DateDiff("yyyy",#1900/1/1#,Date())
No.6
- 回答日時:
>Datediff関数の結果は「26」など数値で表示されますね?
なのでなぜ文字列で指定するのかわからないです.
(#1のお礼)
関数の戻り値のデータタイプと引数のデータタイプと同一に論じることはおかしい。。
質問の件も、関数のお約束なので、議論しても、実効性は無い。
関数の処理を作る開発者の決め次第、受けとりから次第と思う。
私の感じる例(それぞれ深い意味があって、知らないだけかも判らないが)
エクセルでもSUMIFの第2引数は >60 でよいと思うが
=SUMIF(D1:D5,"=>60",D3:D5) と書かせるような例があって、個人的にはなくてもよかろうと思う。
Rangeでもエクセル関数はほとんどセル範囲を D1:D3のように入力するが、VBAではRange("D1:D3") である。
No.4
- 回答日時:
#2の方のが正解です。
Datediff関数の始めの引数は時間間隔を表すだけの文字列です。
日付を表す数値ではないので日付表示の##で囲むことはしません。
ちなみにEXCELで使えるDATEDIF関数(LOTUS1-2-3との互換関数)でも
=DATEDIF(A1,B1,"y")
のように時間間隔の引数は""で囲みます。
どうしても納得できないならテキスト形式の変数を使ってください。
詳細は下記を参照
http://www.accessclub.jp/supbeg/042.html
No.3
- 回答日時:
元々、Basicに日付に関する定数の書き方が無いから
例えば A = 2008/08/25 と記述した場合
VBAでは型の自動変換があるので 2008÷08÷25 の結果をAに代入する事になる
また、#は数値を表す意味で使われてますから##で囲むは紛らわしい
なので日付を定数で書く場合は文字列として記述するようになったと思われます。
AccessのSQLなど新しい物はその辺の考慮がされている為かも
(こっちのケースがまだ少ない)
同じDBでも昔からあるものはやはり文字列で型変換して代入する方法をとっている物があります。
進化の過程にあるものに関し使えないから可笑しいと言ってあげるのはかわいそうです。
別に文字列でも問題にならないでしょうから。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL ある時間以内の利用者の抽出について 3 2022/03/26 11:15
- Visual Basic(VBA) 日付の計算方法 2 2022/07/01 23:35
- その他(Microsoft Office) wordの差し込み印刷での日付表示 2 2023/08/15 16:51
- Excel(エクセル) Excelのテーブルについて 6 2023/07/07 08:37
- Excel(エクセル) Excel2019、2021の日付、曜日の表示について 2 2022/11/29 15:01
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/01/23 11:02
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/01/23 09:24
- Excel(エクセル) 【Excel質問】 「本日の日付」から指定条件を満たす営業日経過後の日数を表示させる関数式 3 2022/06/06 23:28
- Excel(エクセル) エクセルの数式について教えてください。 2 2023/03/04 09:54
- Excel(エクセル) エクセルでSUMIFS関数で条件範囲の部分が#valueになる。 4 2023/04/28 12:42
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「24日の0時」って・・・
-
パソコンで購入したデーターが...
-
差し込み印刷に当日の日付が入...
-
回覧板の日付について質問です...
-
日付の大小の表現
-
「時間」、「期日」、「日付」...
-
履歴書の日付間違いで落ちますか。
-
WEEKDAYが反映されない
-
エクセルで6ヵ月後を自動入力で...
-
エクセルで日付別にシートを分...
-
Excel関数 基準日に一番近い指...
-
EXCELで日付を****年上期、****...
-
エクセル VBA 今日の日付...
-
エクセル マクロ 名前を付けて...
-
Excelでヘッダに前日の日付を表...
-
ACCESSで日付ごとに自動連番(...
-
SQL2008での年度の取得方法
-
2つの日付の中間の日付 エク...
-
[SQLSERVER2005]OSの日付を変更...
-
AccessのDMax関数の複数条件式...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「24日の0時」って・・・
-
パソコンで購入したデーターが...
-
差し込み印刷に当日の日付が入...
-
日付の大小の表現
-
回覧板の日付について質問です...
-
「時間」、「期日」、「日付」...
-
エクセル マクロ 名前を付けて...
-
Excelの関数について質問です。
-
エクセルで6ヵ月後を自動入力で...
-
履歴書の日付間違いで落ちますか。
-
エクセルで日付別にシートを分...
-
差込印刷 縦書きで和暦(漢数...
-
WEEKDAYが反映されない
-
ACCESSで日付ごとに自動連番(...
-
EXCELで日付を****年上期、****...
-
2つの日付の中間の日付 エク...
-
エクセルで日付け表示で、明治...
-
アンドロイドスマホ。カメラに...
-
勤務表をエクセルで作る際、 最...
-
下の画像はアンドロイドタブレ...
おすすめ情報