No.1ベストアンサー
- 回答日時:
こんばんは
① dim arr は Variant型です
Variant型変数は代入時にその型などが決まります
arr = Range("A1:B5")
Valueなので配列となりインデックスが付加されます arr(1,1)~
ただし、Variant型配列は配列インデックス(大きさを増やせません)
ReDimは使えない
要素数が確定していてセルアクセスを減らす目的やセル範囲の値を保持
(配列に入れて対象セルの値を変更し使う時)する時など・・伝わらないかも
Dim arr As Variant
arr = Range("A1:B5")
Range("D1").Resize(UBound(arr, 1), UBound(arr, 2)) = arr
余
Variant型変数で
set arr = Range("A1:B5") とするとRangeオブジェクトになり
同様にインデックスも付与されます
arr.Item(1,1)~
VBA実行中でもセルの値を変えると変数の値も変更される
一方
② dim arr() は ()により配列として確定していますので
代入時には配列のインデックスが必要になります 要ReDim
Dim i, j
Dim arr()
ReDim arr(Range("A1:B5").Rows.Count - 1, Range("A1:B5").Columns.Count - 1)
For i = LBound(arr, 1) To UBound(arr, 1)
For j = LBound(arr, 2) To UBound(arr, 2)
arr(i, j) = Range("A1:B5").Item(i + 1, j + 1)
Next j
Next i
Range("D1").Resize(UBound(arr, 1) + 1, UBound(arr, 2) + 1) = arr
ReDim Preserve
要素数の増減(2次元側)や Preserveキーワードなどで要素の値を
保持したまま要素数を増やす事が出来ます
(不確定要素数の場合は②を使う必要があります)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- JavaScript EasyUIのSubGrid(jquery)におけるObjectに入れた連想配列について 1 2022/05/02 11:21
- JavaScript 配列の1要素を代入した変数を使って元の配列要素を削除できるか 1 2023/07/28 03:34
- PHP c言語 文字 - '1'+26 3 2022/03/26 20:58
- C言語・C++・C# c言語 int temp = 0; if(isdigit(arr[i])){ temp=arr[i] 2 2022/03/27 01:44
- C言語・C++・C# int temp = 0; if(isdigit(arr[i])){//文字が数字であれば(0~9) 1 2022/03/27 01:37
- Visual Basic(VBA) VBA横データを縦にしたいです 2 2023/08/08 19:38
- Visual Basic(VBA) vb.netです。2次元配列の要素をFor Eachでひとつづつ取得したい。 4 2022/07/05 11:30
- Excel(エクセル) Excleマクロ セル値の代入と文字列の結合について 3 2022/10/05 16:47
- Visual Basic(VBA) 複数csvを横に追加していくマクロについて 2 2023/04/25 09:19
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA 変数名に変数を使用したい。
-
エクセルでXY座標に並べられた...
-
Dir関数で読み取り順を操作でき...
-
VB6のメモリ解放に関して
-
CheckBoxの配列化
-
定数配列の書き方
-
ReDim PreserveよりもReDimが遅い
-
C#でbyte配列から画像を表示さ...
-
free()関数の多用 と Segment...
-
vba フィルター 複数条件 3つ以...
-
構造体配列の特定のメンバーをF...
-
エクセル(VBA)の空白配列の削除...
-
VB.NETの配列の限界を教えてく...
-
OutOfMemoryExceptionの回避策...
-
VBAでMODE関数をつくる
-
Excel2010のinputboxで複数デー...
-
VBAで配列引数を値渡しできない...
-
配列の要素がすべてカラかどう...
-
VBAのワークシート関数で配列の...
-
SPLIT関数
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA 変数名に変数を使用したい。
-
vba フィルター 複数条件 3つ以...
-
エクセルでXY座標に並べられた...
-
C#でbyte配列から画像を表示さ...
-
配列のペースト出力結果の書式...
-
配列の中の最大値とそのインデ...
-
Excel2010のinputboxで複数デー...
-
Dir関数で読み取り順を操作でき...
-
大量の変数を定義するにはどう...
-
Redim とEraseの違いは?
-
VB6のメモリ解放に関して
-
CheckBoxの配列化
-
COBOLの基本的な事なので...
-
コンボボックスのインデックス...
-
構造体配列の特定のメンバーをF...
-
構造体配列内の文字列検索のよ...
-
定数配列の書き方
-
Excelのメモリ(配列)の上限は2G...
-
Segmentation Fault (メモリ制限?)
-
複数のtextboxの処理を一括で行...
おすすめ情報