VBA別館・Python別館

64324

今日の日付発生VBA - Tak

2018/04/26 (Thu) 15:51:59

では今までのマクロをベースに、VBAでプログラムを作ってみましょう(コードcodeを書くとも言います)。


① 今日の例題として、エクセルシートのセルに、今日の日付を表示するを練習します。 まずその命令を出すボタンを作ります。


・開発タブをクリック①。
・デザインモードタブをクリック②。
・挿入タブをクリック③。
・コントロール(部品です)のアイコムが表示されますので、この中のActiveXコントロールのなかからコマンドボタンをクリック④して、シート上の適切なセルの上でクリックして下さい。
・するとCommandButton1が作られます⑤。

フォームコントロールにも似たようなコマンドボタンがありますが、今回のCommandButtonはVBA用、フォームコントロールの方のボタンはマクロ用と思ってください。


VBAでボタンを作る場合は、必ずこのステップを踏みますので、ここまでを繰り返し練習してください。 

ここまで出来たら、次のcodingへ移ります。

今日の日付発生マクロ - Tak

2018/04/27 (Fri) 09:01:37

② 今日の日付を発生表示させます。

参考までに日付発生をマクロで自動作成させる(貴方がセルに日付発生関数を書き込む)と、次のようになります。

Sub Macro3()'
' Macro3 Macro
' 今日の日付発生マクロ'
' Keyboard Shortcut: Ctrl+c
'
Range("D3").Select '①
ActiveCell.FormulaR1C1 = "=TODAY()" '②

End Sub

再度各コードを説明します。

① 表示先のセル---自分でその時マウスで指定しますので、ここは不要です。

② 選んだセルに日付発生関数で、発生させます。---必要なのはこれだけ。

よって最終的には、マクロは;

Sub Macro3()

ActiveCell.FormulaR1C1 = "=TODAY()" 

End Sub

となります。 簡潔になりましたね。でも誰もこんなマクロを書きません。 FormulaR1C1なんて使いませんよ。 

次回は、これをVBAで書きます。


今日の日付発生VBA - Tak

2018/04/28 (Sat) 09:51:54


③ ではVBAならどんなcodeが出来るか?

左図:commandoButton1-コードの表示クリック
右図:別枠で赤で囲んだようなcodeが出来ている。

えっ、何もできてないじゃないか!

そう、これからそのcpdeを貴方が書くのです。

続く

今日の日付発生VBA - Tak

2018/04/28 (Sat) 14:17:45

④ 初めてのVBAを書く

・VBAでcodeを書くときには、開発タブーデザインモードー挿入と行って、ActiveXから最初のボタンを選ぶのでしたね。
・それをシートに張り付けると、CommandButton1が出来ます。
・そのボタンの上でマウスの右ボタンを押して、コードの表示をクリックします。

 ・すると、
   Private Sub CommandButton1_Click()

   End Sub
  のようなdefaultのcodeが出来ます。
 
ここまでが今までの説明の復習です。 

それでは、最初のVBAプログラムを作ります。
 Private Sub CommandButton1_Click()
   ActiveCell.Value = "=TODAY()"
 End Sub
と真ん中の一行(ActiveCell.Value = "=TODAY()")だけ書き込んで下さい。  

これで、選んだセルに今日の日付”2018/4/20”と表示されます。 こんな面倒ことをしなくても、セルに”=TODAY()”と書けば今日の日付が表示されますが、VBAのプラグラムの中で指定できるということが、連続したプログラムを作るときに大事になります。

今回はエクセル本来の関数を使用しましたが、次回は自分のcodeを書きます。



名前
件名
メッセージ
画像
メールアドレス
URL
文字色
編集/削除キー (半角英数字のみで4~8文字)
プレビューする (投稿前に、内容をプレビューして確認できます)

Copyright © 1999- FC2, inc All Rights Reserved.