和風スパゲティのレシピ

日本語でコーディングするExcelVBA

日付・時刻

マクロの実行時間計測(Timer)をクラス化する

マクロの実行時間はTimer関数で0.00秒単位で測ることができます。開始時刻 = Timer、終了時刻 = Timer、終了時刻-開始時刻で求まるコードですが、これをクラスにすることで管理する変数が2つ減り、さらに簡単に呼び出せるようになります。

Time関数とTimer関数の違い

現在時刻を取得するTime関数とTimer関数の違いを解説します。単位(型)と精度が異なります。Time関数がDate型で表示形式や各種関数に利用できるのに対し、Timer関数は1/00秒まで計測できるSingle型のため、実行速度計測などに向いています。

4月から3月を連番に変換してコードを整理する

日本企業でエクセルを使う場合「年度」で日付を管理したい場面が非常に多いです。年度を求めたりといった直接的な計算もさることながら、For m = 4 To 12 For m = 1 To 3 とループを分けるのも面倒な処理です。これを簡潔にする関数を作りましょう。

「年度」を使って日付を求めるDateSerial関数

日本企業でエクセルを使う場合、「年度」で日付を管理したい場面が非常に多いです。ですが、残念ながらタイトルの関数はデフォルトでは用意されていません。と言うことで作りましょう。2019.4.1~2020.3.31を、1つの式で表現できるようになりとても便利です。

日付から「年度」を求める関数

日本企業でエクセルを使う場合、「年度」で日付を管理したい場面が非常に多いです。ですが、残念ながらタイトルの関数はデフォルトでは用意されていません。と言うことで作りましょう。2019.4.1~2020.3.31を、1文で表現できるようになりとても便利です。