5月8日~9日の達人養成塾、初日が終わったところだ。
今回の講義から、講義時間を2日間合計で1時間ほど延長した。
初日 11:00-20:00
二日目 9:00-18:00
受講生にとっては、大変だという側面もある反面、たくさん講義を受けられるというメリットもある (^^
ところで、達人養成塾のエクセルマクロ講座で出てきた質問をベースに、役に立ちそうなマクロをひとつ紹介。
以下のマクロを実行すると、実行の都度、そのマクロを実行したときの日付時刻から作成された文字列を作り、それをシート名に割り当てる。
Sub CreateNewDateTimeSheet()
Dim dt As Date
dt = Now
Dim st String
st = Format(dt, “yyyymmddhhnnss”)
Worksheets.Add
ActiveSheet.Name = st
End Sub
(Now関数で取得した日付時刻を利用しているので、連続で実行する場合は、1秒以上時間を空けてください)
日付時刻を元にした文字列の作成には、Format関数を使うのが簡単だ。
前の会社(「資本金10億円くらいあって、従業員が5人しかいなかった」という、湯水のように開発資金に金をかけるITベンチャー)では、開発者のバグつぶし状況をチェックするための基礎データから進捗状況を拾ってきて処理するエクセルマクロを作っていたことがあった。
そのとき、そのマクロを実行する都度、上のマクロのような要領でそのマクロを実施したときの日付時刻を元にして作ったシート名のシートを作り、それに進捗状況のデータを流しこむようにしていた。
この手の実践的なエクセルマクロ・VBAの使い方を即興で紹介できるのが、実務でマクロを書きまくっていた人間としての小川慶一のウリなのだろう。