配列(一次元/二次元)

配列(一次元/二次元)

ニ次元配列の中身をイミディエイトウィンドウに全て出力する処理をパーツ化【ExcelVBA】

人が見やすいのはA1形式ですが、VBAで扱いやすいのはR1C1形式です。例)セルA1を表す時、「A1(A1形式)」「1.1(R1C1形式)」上記をお好きなモジュール内にコピペしてください。実際に使用す...
0
配列(一次元/二次元)

静的配列/動的配列/Variant型に配列代入の違い【ExcelVBA】

VBAで高速処理に欠かせない配列処理ExcelVBAマクロは動作が遅いと言われがちです。それは大きな間違いです。大体そういう方は、大量のデータをワークシート内のセルで、検索、代入、計算しており、その処...
0
配列(一次元/二次元)

RedimPreserveより事前に領域確保したほうが速度が出る【ExcelVBA】

マクロ開発時、二次元配列の要素数が読めない場合、RedimPreserveで指定や要素の入れ直しで二次元配列を最小の要素数→任意の行数の配列で処理することは、処理自体奇麗と考えます。処理は奇麗でも、件...
0
配列(一次元/二次元)

配列の指定した範囲を抜き出す(インデックス番号でFromTo)【ExcelVBA】

使い方上記をコピペでお好きなモジュール内に記載してください。注意点 元のインデックス番号は保持したまま処理をします。※必要あれば要素数計算してRedimPreserveするコードです。関連記事 一次元...
0
配列(一次元/二次元)

RedimPreserveはフィルタの動きは出来ずインデックス番号が変わるだけ【ExcelVBA】

RedimPreserveは要素を保持したまま要素数を増やすことが多いと思います。開発案件で、配列arr(1 to 5)から、arr(3)~arr(5)を抜き出したい案件がありました。配列をForで回...
0
配列(一次元/二次元)

一度Dim宣言すると配列の添え字の始まりは変更できない(けどVariant型は関係ない)【ExcelVBA】

当方のオンラインマクロ受講者に聞かれて、少し調べた案件です。マクロを主に仕事としていても、普段使わないものはわかっていないものがあり、日々勉強だと感じました。----Redim Preservで。実行...
0
配列(一次元/二次元)

一次元配列を降順並び替え(ソート)する【ExcelVBA】

使い方上記をコピペでお好きなモジュール内に記載してください。注意点 一次元配列の中身を昇順並び替え(ソート)する 一次元配列を降順並び替え(ソート)する(今回はこれ) 一次元配列の並びを反転させる(降...
0
配列(一次元/二次元)

二次元配列にヘッダー(一次元配列で準備)を追加する処理をパーツ化する【ExcelVBA】

二次元配列内でデータ処理した後、エクセルに反映する前にヘッダー行を付与したいケースがあります。今回の記事は、データの2次元配列とヘッダーの1次元配列を準備し、結合するコードを説明します。二次元配列にヘ...
0
配列(一次元/二次元)

ニ次元配列に指定文字が存在しているかどうか判定する【パーツ化】

指定した文字が配列内存在しているかどうか判定したい配列データと指定文字が一致する場合のみ処理するなど、配列内の中身のチェックをしたい場合があります。パーツ化することで、今後の開発の時短に繋がります。指...
0
配列(一次元/二次元)

一次元配列をシートに反映する処理をパーツ化【ExcelVBA】

高速化のため配列で計算することは多いと思います。最終的に結果をワークシートへ貼り付ける処理も多く、今回パーツ化したのでコピペでそのまま使用可能です。上記をお好きなモジュール内にコピペしてください。実際...
0
配列(一次元/二次元)

(Dim arr as Variant)配列が初期化されているのかどうか調べる【isEmpty】【ExcelVBA】

配列が初期状態かどうか調べる厳密には配列が初期化されているのかどうかではなく、配列として使用を考えているVariantが初期化されているのかどうか、です。まとめ 配列をEraseで初期化する (Dim...
0
配列(一次元/二次元)

配列をRedimPreserveで要素数を増やすor減らす【Redim Preserveステートメント】【ExcelVBA】

Redim Preserveで要素数を増やすor減らすまとめ Eraseステートメントは初期化 Redimは再初期化・再定義(要素は全て消える)。 Redim Preserveは再定義(要素は残したま...
0
配列(一次元/二次元)

配列をRedimで再初期化する【Redimステートメント】【ExcelVBA】

Redimで配列を再初期化するまとめ Eraseステートメントは初期化 Redimは再初期化・再定義(要素は全て消える)。 Redim Preserveは再定義(要素は残したまま)※要素数を増やす場合...
0
配列(一次元/二次元)

一次元配列に指定文字が存在しているかどうか判定する【パーツ化】

指定した文字が配列内存在しているかどうか判定したい配列データと指定文字が一致する場合のみ処理するなど、配列内の中身のチェックをしたい場合があります。パーツ化することで、今後の開発の時短に繋がります。指...
0
配列(一次元/二次元)

配列の値を変更・更新する(1次元/2次元)

VBAで高速処理に欠かせない配列処理ExcelVBAマクロは動作が遅いと言われがちです。それは大きな間違いです。大体そういう方は、大量のデータをワークシート内のセルで、検索、代入、計算しており、その処...
0
配列(一次元/二次元)

配列の要素に値を入れる【For文】

VBAで高速処理に欠かせない配列処理ExcelVBAマクロは動作が遅いと言われがちです。それは大きな間違いです。大体そういう方は、大量のデータをワークシート内のセルで、検索、代入、計算しており、その処...
0
配列(一次元/二次元)

配列の値を取得する(1次元/2次元)【For文で取得】

VBAで高速処理に欠かせない配列処理ExcelVBAマクロは動作が遅いと言われがちです。それは大きな間違いです。大体そういう方は、大量のデータをワークシート内のセルで、検索、代入、計算しており、その処...
0
配列(一次元/二次元)

配列の値を取得する(1次元/2次元)【ForEach文で取得】

VBAで高速処理に欠かせない配列処理ExcelVBAマクロは動作が遅いと言われがちです。それは大きな間違いです。大体そういう方は、大量のデータをワークシート内のセルで、検索、代入、計算しており、その処...
0
配列(一次元/二次元)

【改良】二次元配列の行列(縦横)を入れ替える【ExcelVBA】

使い方注意点 二次元配列しか対応していません。(三次元配列などの多次元配列は対応できません。)関連記事 二次元配列の一次元目を増やす場合、Transposeを使って65537件以上のデータを処理した場...
1
配列(一次元/二次元)

CSVファイルを二次元配列に格納する【ExcelVBA】

CSVファイルを二次元配列に格納したいCSVファイルを配列に格納して、配列上で処理させたい場合があります。よく使う処理のため、パーツ化しています。CSVファイルを二次元配列に格納するサンプルコード実際...
0