電子書籍の厳選無料作品が豊富!

 VBAの初心者なんですけど、ワークシート関数のtoday()と同じ働きを持つVBAってありませんか?
 ただ、例えば、
Range("A1").value="=today()"
以外のものでお願いします。

A 回答 (3件)

Range("A1").Value = Date では?

    • good
    • 0
この回答へのお礼

ありがとうございます。それだけでよかったんですね。ちょっと難しく考えてました。

お礼日時:2006/09/05 01:16

こんにちは。



>ワークシート関数のtoday()と同じ働きを持つVBAってありませんか?

 Date 関数が似ていますが、値を返すだけです。

そして、VBAでは、ワークシートに、日付/時間データを送り込む時は、ついでに、書式も送ります。

Sub TestSendDate()
 Range("A1").NumberFormatLocal = "yy/mm/dd"
 Range("A1").Value = Date
End Sub

送り込まれるデータは、日付型のデータです。

Range("A1").Value = "=TODAY()"
Range("A1").Value = Range("A1").Value
とすれば、Date を送ったのと同じ結果になります。

また、

Range("A1").Formula = "=TODAY()"  '.Valueプロパティか、Formulaプロパティか?

数式として、その文字列が全うしているなら、.Valueプロパティでも同じです。ワークシート上のキャスティングで、数式に変換されます。ただ、若干、ワークシートのキャスティングのために、コードが遅くなるはずです。

通常は問題ないのですが、FormualLocalのほうが、そのPCのコントロールパネルの地域設定に従うはずです。具体的には、日付設定などがあります。
    • good
    • 0
この回答へのお礼

ありがとうございました。私は初心者なので、大変勉強になります。実際やってみたらできました!!。

お礼日時:2006/09/05 01:13

回答は出ていますが、セルに式を埋め込む場合はvalueプロパティではなくFormulaプロパティになります



 Range("a1").Formula="=today()"
    • good
    • 0
この回答へのお礼

ありがとうございます。大変たすかりました!

お礼日時:2006/09/05 01:14

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


おすすめ情報