【ExcelVBA】作成した配列をシートにぺたっと貼り付ける

◎作成した配列をシートにぺたっと貼り付ける

 


例)変数名:Hensu
  10レコード(行)、3カラム(列)の配列を
  セルA1からセルC10の範囲にぺたっと貼り付ける


’----
’方法1 作成した配列をシートにぺたっと貼り付ける
ActiveSheet.Range("A1:C10") = Hensu

’方法2 セル番地をR1C1形式で貼り付けるときはこんな感じ
ActiveSheet.Range(Cells(1, 1), Cells(10, 3)) = Hensu

 


<配列について>
配列のつくりかたは以前の2記事を参考にしてください
 

paddress.hatenablog.com

 paddress.hatenablog.com



<貼り付ける場所について>
記事ではもう最初から「セルA1からセルC10」まで、ってわかってて貼り付けた体になっていますが、実務ではそんな簡単にいかないと思います。
最初から準備している表にぴったりの配列を貼り付けられるなら、方法1の記述でばっちりOKですが、データ数が定まらない場合貼り付け位置もかわってきます。
おそらく貼り付けのスタート位置はかわらないと思うんですけど、終わる位置がかわりますよね。
残念ながら配列を貼り付ける場合は、エクセルのコピペと違って開始位置だけ指定して貼り付けることができないので、「開始位置と終了位置」を明確にしてあげる必要があります。
そんなわけで、方法2のR1C1形式を使ってセル番地をあらわしてあげると、変数を当てやすくて便利です。ご参考まで。




 

 

 

ではまた。

 

 

 

#ExcelVBA #エクセルVBA #配列