【Excel/VBA】経過時間用の配列を作成

ExcelのVBA(マクロ)で、経過時間用の配列を作成する方法についてまとめました。

【自作関数】経過時間用の配列を作成

経過時間用の配列を作成する関数です。

' 経過時間用の配列を作成
Function timeArr(ByVal startTime As Integer, ByVal endTime As Integer, ByVal samplingTime As Double) As Variant
    ' 配列、変数の定義
    'Dim time() As Variant
    'Dim i As Integer
    
    ' サンプル数
    N = (endTime - startTime) * CInt(1 / samplingTime)
    ReDim time(N)
    
    
    For i = startTime To N
        time(i) = startTime + samplingTime * i
    Next i
    
    createTimeArr = time
End Function

' 配列の要素確認
Function msgArr(ByVal arr As Variant)
    For Each Var In arr
        msg = msg & Var & ", "
    Next Var
    MsgBox msg
End Function


Sub macro()
    Dim startTime, endTime As Integer
    Dim samplingTime As Double
    Dim time() As Variant
    
    ' パラメータ
    startTime = 0 ' 開始時間[s]
    endTime = 100 ' 終了時間[s]
    samplingTime = 0.5  ' サンプリング時間[s]

    ' 経過時間用の配列作成(0, 0.5, 1, 1.5, .... 99, 99.5, 100)
    time = timeArr(startTime, endTime, samplingTime)

    ' 作成した配列の要素を確認
    Call msgArr(time)
    
End Sub
関連記事
1 【VBA入門】Excelマクロで仕事・作業を自動化
関連記事