Excel VBA 2次元配列の初期化

 

Excel VBAで2次元配列を初期化する具体的な使い方や、注意点やサンプルコードを紹介します。

 

Excel VBA 2次元配列の初期化

以下のようなシーンで利用されます。

・既存の2次元配列のデータをクリアして新しいデータを格納する場合

・関数やサブルーチン内で動的に生成された2次元配列に初期値を設定する場合

 

ポイント

ReDimを使用して新しいサイズの配列を作成するため、既存のデータは失われます。

 

Excel VBA 2次元配列の初期化サンプルコード
Option Explicit

Sub InitializeArray()
    Dim myArray() As Variant
    Dim numRows As Integer, numCols As Integer
    Dim i As Integer, j As Integer
    
    ' 行数と列数を指定
    numRows = 3
    numCols = 4
    
    ' 配列定義
    ReDim myArray(1 To numRows, 1 To numCols)
    
    ' 配列に値を格納
    For i = 1 To numRows
        For j = 1 To numCols
            myArray(i, j) = i * 10 + j
        Next j
    Next i
    
    ' データの表示
    For i = 1 To numRows
        For j = 1 To numCols
            Debug.Print myArray(i, j)
        Next j
    Next i

    ' 配列再定義
    ReDim myArray(1 To numRows, 1 To numCols)
    
    ' データの表示
    For i = 1 To numRows
        For j = 1 To numCols
            Debug.Print myArray(i, j)
        Next j
    Next i
End Sub

サンプルコードは、myArrayに値を格納してDebug.Printで表示。その後、2二元配列をReDimを使って初期化して、2次元配列の内容が初期化されているかDebug.Printで表示しています。

 

    For i = 1 To numRows
        For j = 1 To numCols
            myArray(i, j) = 0
        Next j
    Next i

このサンプルコードは、For分で2次元配列を初期化しています。

毎日のルーチン作業をExcel VBAで自動化し、時間を有効活用しませんか?Excel VBAエキスパート資格取得問題集を活用して資格取得、そして効率的な仕事を実現しましょう!

VBAエキスパート資格は、日常業務でExcelを多用し、手動作業を減らしたいと考えている方には価値あるものです。

ExcelVBAエキスパートベーシック
仕事の効率をあげるためにExcelVBAを利用する人が対象の問題集です。


ExcelVBAエキスパートスタンダード

ExcelVBAの開発を仕事にする人が対象の問題集です。

 

Excel  VBA エキスパート資格について知りたい方は、下記「Excel VBAスキルアップを目指すなら知っておきたいVBAエキスパート」をご確認ください。

 

ExcelVBAの学習方法で効果的な学び方を知りたい方は、下記「Excel VBA初心者のための効果的な学習ガイド」をご確認ください。