もう少し詳しく

こちらの内容も含めて知っておくとVBAの作成に役立ちます

ある部分の処理時間を計測したい

計測開始時点で時刻をとっておき、計測終了時点の時刻と引き算して出力することができます。

' Utilモジュールに関数を定義します (秒数は実数で管理)
Dim start As Double
Public Function TimeStart()
    start = Timer
End Function

Public Function TimeFinish()
    Debug.Print (Timer - start) & " sec elapsed."
End Function


' 利用方法
Sub Test()
    TimeStart 
    '~ 計測したい対象
    TimeFinish
End Sub

TimeFinishが呼ばれたときに経過時間が表示されます。

0.08984375 sec elapsed.

シート全体の文字を削除

シート名を指定してそのセル全体の値を削除する方法です

Worksheets("シート名").Cells.ClearContents

配列の利用

VBAプログラム内で複数の要素をまとめるのにArray関数を利用することができます。

複数の要素に対して繰り返し処理をする

例) Arrayに3つのシート名をVBAに直書きしてセル全体の値を初期化する方法

Dim s As String
For Each s In Array("シート1", "シート3", "シート3")
    Worksheets(s).Cells.ClearContents
Next

VBAのもととなるVisual Basicの特徴

Visual Basicは、Java ScriptなどC系の言語と比較して書き方に特徴があります。 ざっと理解するために違いを整理します。


おまけ

未定義の変数があるとき必ずエラーにする

各プログラムの先頭に「Option Explict」を必ず記入してください。 これにより未定義の変数があるとプログラムエラーとなり、タイプミスを軽減することができます。