- ベストアンサー
日付け関数について
日付関数において大小を比較したいのですが、以下のように記述しましたが 認識しません、記述例を教えて下さい、 セルA1に =today() と記載 A2に =DATE(2004,1,1) と記載、 VBAif関数にて、 =if range("A1").select >= range("A2").select then ・・・・・・・・・・と記載しています、
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
#1に既に回答が出ていますが、その他少し書いてみます。 本日を2002年10月21日とします。 A1に=today()を入れると、2002/10/21となり、A2に =DATE(2004,1,1)と入れると2004/4/1となります。 A1をコピーし、B1をポイントして「編集-形式を選択して貼り付け-値」をしてみると、B1は37550という、日付けシリアル値になります。A1の値(Range("a1").value略してRange("a1"))は37550なんです。 同じくA2の値をB2に値のみ複写すると37987です。 これを比較する(日付けの前後を考える)のですから、 IF Range("a1") >= Range("a2") then End Ifまたは IF Range("a1").Value >= Range("a2").Value then End If にすることになります。 ・Ifの前の=は不要です。 ・Ifは関数でなくステートメントです。勿論エクセルの 関数にIfはありますが、それとは別です。 ・Selectはメソッドですが、セルの値を問題にする時はValueプロパティで参照します。
その他の回答 (1)
- taisuke555
- ベストアンサー率55% (132/236)
if range("A1").value >= range("A2").value then にしてみてください。
お礼
有り難うございました、正常に動作しました、
お礼
有り難うございました、正常に動作しました、