【ExcelVBA】選択範囲を配列にさくっと入れる

◎選択範囲を配列にさくっと入れる


例)変数名:Hensu

  対象範囲:セルA1からセルC10まで

’----
’変数の宣言
Dim Hensu() As Variant

 

'方法1 そのまま範囲指定して配列に入れることができる
Hensu = Activesheet.Range("A1:C10").Value

'方法2 こっちだと、セル単位ではなく行列番号を指定できるので、変数を使って対応するときにとても便利
Hensu = ActiveSheet.Cells(1, 1).Resize(10, 3).Value


’----

 

<変数宣言の補足>

As以降はデータ型を表してます。
ここはVariant(バリアント型)でもString(文字列型)でもいいんですけど
数値型とかデータ型とか文字列型とか
何が入ってくるかわからないときはVariant型で取っとくといいです。



<方法2の補足>
Cells(1,1)の部分がセルA1を表してます。
最初の1が行の位置(セルA1の1を表してます。)
カンマの後ろの1が列の位置(セルA1のAを表してます。)

Resize以降の(10,3)は
10レコード(行)、3カラム(列)を表しています。
(C列はA列から数えて3列目にありますよね。)

 

<ちょっとした注意>
範囲指定のあとの「.Value」を忘れるとエラーになります。
私はよく忘れて「え?なんで?あってるやん?」ってなりますが
あってないのでエラーになります。
お気をつけて。

 

ではまた。

 

 

 

 

 

#ExcelVBA #エクセルVBA #配列