• ベストアンサー

Excell : 日付を設定するマクロの書き方

マクロの中で、今日の日付を設定する書き方を教えてください。例えば、セル A1に今日の日付を設定する。 A1に =today() を書くのではなくて、today()の返す値を設定するということになります。よろしくお願いします。 Sub test1()    ............ End Sub

質問者が選んだベストアンサー

  • ベストアンサー
  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.1

こんにちは。 Range("A1").Value = Now() ですか?

zuntac
質問者

お礼

回答ありがとうございます。この方法で解決しました。

その他の回答 (5)

  • WWolf
  • ベストアンサー率26% (51/192)
回答No.6

Sub test() a = Date MsgBox a End Sub これでよろしいでしょうか?

  • WWolf
  • ベストアンサー率26% (51/192)
回答No.5

Sub test() a = Month(Now) & "月" & Day(Now) & "日" MsgBox a End Sub これでよろしいでしょうか?

zuntac
質問者

お礼

回答ありがとうございます。

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.4

No.2です。 間違えました。 ×Time ↓ ○Date

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

エクセルの関数とエクセルVBAの比較で、誤解があるのではないですか。 関数式は=TODAY()と入れると、ブックをオープン するごとに(ストップしておかない限り)再計算されて、当日の日付に変わります。 VBAでもWorkbookOpenなどのイベント・プロセジュアに入れておくとそうなる場合がありますが、そうでなければ、自動実行されることはありません。 実行しても Cells(i, j) = Date の左辺のセルを指定するi,jをその日にふさわしいセルに移動(指定)する(例えば前日書き込みの最終行の次行)ように考えてますので、前の回の日付には上書きしないようにします(出来ます)。 上書きしても良いケースも勿論あり得ます。 使う場合によります。 質問の題意の取り方が狂っている場合はご容赦を。

zuntac
質問者

お礼

回答ありがとうございます。意図は、「セルにtoday()関数を設定する」のではなくて、「セルのtoday()関数の戻り値を設定する」ということでした。

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.2

こんにちは。maruru01です。 TODAY関数の代わりなら、Time関数の方かな。 Range("A1").Value = Time Now関数は、時刻付きなので、ワークシート関数のNOW関数と同じになります。 ま、Nowでも小数点以下を切り捨てれば同じですが。 Range("A1").Value = Int(Now)

zuntac
質問者

お礼

回答ありがとうございます。

関連するQ&A