今日の日付を自動で取得するマクロ(VBAに挑戦)・・・エクセルの便利技

今日の日付を自動で取得するマクロをVBAで作るにはどうすればいいか?
このマクロは非常に簡単です。
また使えるとも思いますので是非使ってみてください。

わざわざVBAで貼り付けているのはToday関数が今日の日付を表示するので、開くたびに日付が変わってしまうためです。
これでは見積書など日付を保存したい場合に使えません。

画像←ランキング応援お願いします。

準備
ここでは例題を作っていますので数字の入れる場所などは自分で使いやすいようにアレンジしてください。
 sheet2のA1に『today()』と入力
  関連記事 今日の日付を表示する)Today()

 sheet2のA1に今日の日付が表示されるはずです。
 表示されない方はA1を右クリック→セルの書式設定→表示形式→日付で日付を表示させましょう。

VBAコード
 ツール→visual basic Ediitorをクリック
 Microsoft Visual Basicが開きます。

 挿入→標準モジュールの順でクリックすると標準モジュールが表示されます。

 標準モジュールの中に下記コードをいれましょう。

Sub 今日の日付を取得()
ThisWorkbook.Worksheets("sheet1").Range("A1") = ThisWorkbook.Worksheets("sheet2").Range("A1")
End Sub


 VBAを閉じツール→マクロの実行→今日の日付を取得でSheet1のA1に日付が転機されます。
 
 最後にsheet1のA1のセルの書式設定を日付に変えれば出来上がりです。

VBA解説
Sub 今日の日付を取得()
マクロの開始(ここで付けた名前がマクロ実行時の名前になります。わかりやすい名前にしましょう)

ThisWorkbook.Worksheets("sheet1").Range("A1") = ThisWorkbook.Worksheets("sheet2").Range("A1")
わざと長く書いています。
VBAではセルの場所の特定に、ブック名(ファイル名).シート名.セルの場所の順で特定する必要があります。
そのためここの=の左側の意味は日本語で言うと『このブックのsheet1のセルA1』という意味になります。
またVBAでは=は数式の=の意味ではなく、=の左側に=の右側のものを入れろという意味になります。
ややこしいですが日本語にするとこうなります。
『このブックのsheet1のセルA1にこのブックのsheet2のセルA1の値を入れろ』
このVBAを覚えておけばデータの転記は簡単に出来ます。


End Sub
マクロの終了

質問など
VBA初心者なので質問・ご意見などあればコメント欄にお願いします^^
可能な限りお答えしたいと思います^^

目指せランキング上位!!
記事読んでいただきありがとうございました。
人気ブログランキングに参加しています。応援クリック頂戴できると励みになります。
画像



ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 1

驚いた

この記事へのコメント

2008年01月30日 00:59
ツミコパソコンのこと全然分からない~。

コメントありがとう!!
注射も怖いような。
傷が残るなんて嫌ですね。(ノ◇≦。) ビェーン!!

ツミコも脱毛やりたいけどなぁ。

応援ぽちりんこ(*'-')σ
虎龍
2008年01月30日 01:03
ツミコ様
 コメントありがとうございます。
 クロスコメント早すぎです(笑)
 光の早さですね。
さとり
2008年01月31日 02:28
さとりパソコンのこと全然わからない~。

僕のパソコンは暇つぶしのオモチャです。
(ツミコさんごめんなさい。)
虎龍
2008年01月31日 07:56
さとり様
 いつもコメントありがとうございます。
 パソコンはやればやるほど味が出るって感じです。
 またよろしくお願いします。
 

この記事へのトラックバック