重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

日付関数において大小を比較したいのですが、以下のように記述しましたが
認識しません、記述例を教えて下さい、
セルA1に =today() と記載 A2に =DATE(2004,1,1) と記載、
VBAif関数にて、
=if range("A1").select >= range("A2").select then
・・・・・・・・・・と記載しています、

A 回答 (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プロパティで参照します。
    • good
    • 0
この回答へのお礼

有り難うございました、正常に動作しました、

お礼日時:2002/10/21 10:07

if range("A1").value >= range("A2").value then


にしてみてください。
    • good
    • 0
この回答へのお礼

有り難うございました、正常に動作しました、

お礼日時:2002/10/21 10:09

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!