質問: access関数: なぜ日付を指定するとき""で囲むのか? accessの関数でdatediff関数というのがありますが、それを使う時に datediff("yyyy",,)などと入力しますが、なぜdatediff関数では年、月などの表示形式を""でくくるのでしょうか? ""は文字列を表すのではないのでしょうか? 日付は##で囲まれるのでdatediff(#yyyy#,)ならわかるのですが。 重箱の隅をつつくような質問で申し訳ないのですが、""で囲むことに納得がいきません。 なぜ""で囲むのでしょうか?
回答: >datediff関数の結果は「26」など数値で表示されますね? なのでなぜ文字列で指定するのかわからないです. (#1のお礼) 関数の戻り値のデータタイプと引数のデータタイプと同一に論じることはおかしい。。 質問の件も、関数のお約束なので、議論しても、実効性は無い。 関数の処理を作る開発者の決め次第、受けとりから次第と思う。 私の感じる例(それぞれ深い意味があって、知らないだけかも判らないが) エクセルでもsumifの第2引数は >60 でよいと思うが =sumif(d1:d5,"=>60",d3:d5) と書かせるような例があって、個人的にはなくてもよかろうと思う。 rangeでもエクセル関数はほとんどセル範囲を d1:d3のように入力するが、vbaではrange("d1:d3") である。