[Excel][VBA]2次元配列






トップページへ

※全てのExcelで動作する保証はありません。また、内容に関し管理人は全ての責任を負いかねます

サンプル ※説明に必要な部分しか記述していません

 

String型を2次元配列で 6×7= 42個用意して、それらをSheet1に転送しているだけです。

ただ、添え字 i が10以上40以下の範囲の時は数字を、それ以外の場合は – を表示しています。

下記を実行すると

Private Sub CommandButton1_Click()

'サンプルでは列A~Gの幅を小さくしています

Dim arr_cal(6, 7) As String
Dim ir, ic, i As Integer


i = 1

For ir = 1 To 6

    For ic = 1 To 7
    
        If (i >= 10) And (i <= 40) Then
            arr_cal(ir, ic) = CStr(i - 9)
 
           
        Else
            arr_cal(ir, ic) = "-"
            
        End If
    
        Sheet1.Cells(ir, ic).Value = arr_cal(ir, ic)
        i = i + 1
    
    Next

Next


End Sub

このようになります。エクセルでカレンダーを作る場合などに応用できそうです。

ExcelのVBAで二次元配列をしたサンプルプログラムの画像で、カレンダーなどに応用できそうです

 

Excelメニューへ戻る






関連記事
[Excel][VBA] 標準モジュールの作り方

[Excel]数式バーの空白欄が大きくなってシートが小さい

[Excel][VBA]大量データの処理にかかる時間の測定事例

[Excel][VBA]個人的 逆引き関数リファレンス

[Excel][VBA] バッチ処理風