どんなものかっていうと、
こんなふうな、to doリストがあったとして、「思いついた日」というところにカーソルを合わせたまま、ボタンを押すと。。。
「思いついた日」には今日の日付、「終了予定日」には2週間後の日付が自動的に設定される。というもの。
では、ちょっとずつコメントも含めて、ソースコードを紹介。
まずは関数定義。
'「思いついた日設定」という関数を定義する Sub 思いついた日設定() '関数を終了する End Sub
次に、ちょっとソースコードを省略する感じで書いてみる。
ActiveCellとは、現在カーソルが合っているセルのこと。
With ActiveCell End With
では中身を埋めていく。
現在の選択しているセルに日付を入れる。
'ActiveCell →「現在選択しているセル」 'Value→セルに値(数値や文字列) 'Date→日付関数 .Value = Date .VerticalAlignment = xlVAlignCenter .Font.Size = 14
思いついた日と同じ行にある「終了予定日」のセルに、思いついた日から14日後の日付を設定。
'Offset(m,n)はオブジェクトからみて、 'm行下、n行右のセルを対象にするという意味 Set cel = .Offset(0, 2).Range("A1") ' 色は赤に設定 cel.Font.ColorIndex = 3 cel.Font.Size = 14 cel.VerticalAlignment = xlVAlignCenter cel.Value = Date + 14
以下、全体のソースコード。
Sub 思いついた日設定() With ActiveCell .Value = Date .VerticalAlignment = xlVAlignCenter .Font.Size = 14 Set cel = .Offset(0, 2).Range("A1") cel.Font.ColorIndex = 3 cel.Font.Size = 14 cel.VerticalAlignment = xlVAlignCenter cel.Value = Date + 14 End With End Sub
さて、このソースコードは命令だけを書いたもの。ボタンに組み込むには、別作業が必要。
excel2010や2007なら、
「開発」→「フォームコントロール」→「ボタン」
で、ボタンを設定。マクロの登録について、ウィンドウが自動で開くので、さきほど自分が書いたマクロを選択すれば完成。
*デフォルトでは、開発メニューはないはず。以下のページ参照。
Excel2010でコントロールツールボックスはどこ
0 件のコメント:
コメントを投稿