ここから本文です

vbaで2次元配列で必要な行だけ、別の2次元配列にコピーしたいです。 Dim C As V...

hoho35769さん

2014/6/515:31:42

vbaで2次元配列で必要な行だけ、別の2次元配列にコピーしたいです。

Dim C As Variant
ReDim D(100, 10) As Variant

C = Range("A1:j100")

このとき例えばC(5,1)からC(5,10)まで全部
D(1,1)からD(1,10)にコピーしたいんです。

D(1)=C(5)

とやってみましたが、うまくいきません。

どうすればよろしいでしょうか?

よろしくお願いします。

閲覧数:
14,420
回答数:
1
お礼:
500枚

違反報告

ベストアンサーに選ばれた回答

whyhoo_progさん

編集あり2014/6/515:55:13

VBAでは 左辺配列=右辺配列の代入はできませんので
質問例では Option BASE 1 的なので
for c= 1 to 10
D(1,C)=C(5,C)
Next

転送したい行数に幅があるときは
一般式ですと全部のコピーだとすると

For r = Lbound(転送元配列名,1) to Ubound(転送元配列名,1)
For c=Lbound(転送元配列名,2) to Ubound(転送元配列名,2)
転送先配列名(r,c) = 転送元配列名(r,c)
Next c
Next r
お尋ねの場合 r=5に固定のケースです。

質問した人からのコメント

2014/6/5 16:35:59

やっぱりfor文使わないといけないんですね。
わかりました。

ありがとうございました。

あわせて知りたい

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

5文字以上入力してください

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。