配列(一次元/二次元)【改良】二次元配列の行列(縦横)を入れ替える【ExcelVBA】 使い方 注意点 二次元配列しか対応していません。(三次元配列などの多次元配列は対応できません。) 関連記事 二次元配列の一次元目を増やす場合、Transposeを使って65537件以上...2022.10.06 0配列(一次元/二次元)
配列(一次元/二次元)CSVファイルを二次元配列に格納する【ExcelVBA】 CSVファイルを二次元配列に格納したい CSVファイルを配列に格納して、配列上で処理させたい場合があります。 よく使う処理のため、パーツ化しています。 CSVファイルを二次元配列に格納するサンプルコード 実際の使い方 ...2022.10.052022.11.21 0配列(一次元/二次元)
配列(一次元/二次元)「二次元配列を動的に行数(一次元目)を減らす」をパーツ化する【ExcelVBA】 使い方 上記をコピペでお好きなモジュール内に記載してください。 結果イメージ 基本は増やすと同じ考えです。 動的に増やすことは問題ないのですが、あまりにも処理が多いと時間がかかりすぎてしまいます。 ...2022.10.04 0配列(一次元/二次元)
配列(一次元/二次元)一次元配列の要素の重複を除く【Unique関数】【ExcelVBA】 一次元配列の要素の重複を除きたい 一次元配列の要素の重複を除きたい場合があります。 連想配列Dictionaryであれば処理ができるのですが、違うやり方もあります。 VBAには重複要素を除く関数は用意されていないので、Excel関数(...2022.10.03 0配列(一次元/二次元)
配列(一次元/二次元)二次元配列の一次元目を増やす場合、Transposeを使って65537件以上のデータを処理した場合 二次元配列の一次元目の要素を増やすには以下方法があります。 Transpose関数をうまく使う方法 別配列に代入する方法 実際には65537件以上はTranspose関数を利用した場合は正常にデータ取得できません。 ...2022.09.092022.09.16 0配列(一次元/二次元)
配列(一次元/二次元)二次元配列の一次元目を増やす場合、Transposeもしくは別配列代入はどちらが早いか? 二次元配列の一次元目の要素を増やすには以下方法があります。 Transpose関数をうまく使う方法 別配列に代入する方法 実際には65537件以上はTranspose関数を利用した場合は正常にデータ取得できないので、 ...2022.09.082022.09.16 0配列(一次元/二次元)
配列(一次元/二次元)【改良】「二次元配列を動的に行数(一次元目)を増やす」をパーツ化する【ExcelVBA】 使い方 上記をコピペでお好きなモジュール内に記載してください。 結果イメージ 下記のように行数が増えます。(上記サンプルでは配列にデータ格納はしてませんが、イメージです) 注意点 通常、最終次元...2022.09.072023.02.24 5配列(一次元/二次元)
配列(一次元/二次元)一次元配列で完全一致した要素が何番目かを取得する【ExcelVBA】 配列内の要素で完全一致した要素が何番目か取得したい場合があります。 単純にFor~Loopで処理します。 一次元配列で完全一致した要素が何番目かを取得するサンプルコード 実際の使い方 その他 配列の要素番号...2022.09.052022.09.10 0配列(一次元/二次元)
配列(一次元/二次元)二次元配列で〇番目に空白行を追加する【ExcelVBA】 二次元配列内の指定した列(縦方向の要素)に空白行を追加したい場合があります。 今回の記事は特定の〇番目の指定行を列追加するコードを説明します。 二次元配列で〇番目の指定行に空白行を追加するサンプルコード 以下の手順で要素を詰めて上書き...2022.09.042022.09.10 0配列(一次元/二次元)
配列(一次元/二次元)「二次元配列で任意の列をキーに複数ソート(並び替え)」をパーツ化する【ExcelVBA】 使い方 上記をコピペでお好きなモジュール内に記載してください。 注意点 Option Base 1を設定しないと動作しません ソート方法は「クイックソート」です。 関連記事 ...2022.06.25 0配列(一次元/二次元)
配列(一次元/二次元)フォルダ内指定条件のファイル名をフルパスで配列として取得する【ExcelVBA】 フォルダ内、指定条件に合致したファイルを配列として取得したい 特定のファイル名のみに対して処理したい場合など、 フォルダ内のファイルを任意条件で取得したい場合があります。 配列で取得するとそのあとのコードも楽になる場合が多いため、...2022.06.08 0配列(一次元/二次元)
配列(一次元/二次元)セル範囲を一次元配列として取得する【ExcelVBA】 セル範囲を1次元配列として取得したい 通常、ワークシート内のセルを取得し配列化すると、二次元配列として処理されます。 ※ワークシート自体が二次元配列のため。 ただ、プログラム上は一次元配列で取得、処理したほうが楽な場合があります。...2022.06.07 0配列(一次元/二次元)
配列(一次元/二次元)二次元配列で〇番目に空白列を追加する【ExcelVBA】 二次元配列内の指定した列(横方向の要素)に空白列を追加したい場合があります。 今回の記事は特定の〇番目の指定列を列追加するコードを説明します。 二次元配列で〇番目の指定列に空白列を追加するサンプルコード 以下の手順で要素を詰めて上書き...2022.04.28 0配列(一次元/二次元)
配列(一次元/二次元)一次元配列で〇番目に要素を追加する(先頭、末尾、指定位置)【ExcelVBA】 配列内の任意の場所に、要素を追加したい場合があります。 今回の記事は先頭や末尾も含んだ指定位置へ、要素を追加する方法を説明します。 一次元配列で〇番目に要素を追加するサンプルコード 以下の手順で指定位置の要素を開けて、要素を追加するイ...2022.04.06 0配列(一次元/二次元)
配列(一次元/二次元)配列の要素の下限の変更をする(一次元/二次元)【1toX】【ExcelVBA】 配列の要素の下限の変更をする 配列の下限のスタートは基本0ですが、VBA初心者は慣れないケースもあります。 その場合、OptionBase1でスタート位置を1にする事も可能です。 ただ、Split関数のようにOptionBase1の影...2022.04.01 0配列(一次元/二次元)
配列(一次元/二次元)配列の型を変換する(一次元/二次元)【ExcelVBA】 配列を型変換したい 配列をVariantで宣言したが、Long型に変えたいなど、型変換の需要はあります。 単純にループさせて型変換するしかなく、CLng関数のような型変換の関数は用意されていません。 配列を型変換するサンプルコード ...2022.03.31 0配列(一次元/二次元)
配列(一次元/二次元)一次元配列の中身をイミディエイトウィンドウに全て出力する処理をパーツ化【ExcelVBA】 人が見やすいのはA1形式ですが、VBAで扱いやすいのはR1C1形式です。 例)セルA1を表す時、「A1(A1形式)」「1.1(R1C1形式)」 上記をお好きなモジュール内にコピペしてください。 実際に使用する時は以...2022.03.22 0配列(一次元/二次元)
配列(一次元/二次元)一次元配列に取り込んだA1形式の列情報をRIC1形式に変更する【ExcelVBA】 人が見やすいのはA1形式ですが、VBAで扱いやすいのはR1C1形式です。 例)セルA1を表す時、「A1(A1形式)」「1.1(R1C1形式)」 上記をお好きなモジュール内にコピペしてください。 実際に使用する時は以...2022.03.212022.06.03 0配列(一次元/二次元)
配列(一次元/二次元)二次元配列をシートに反映する処理をパーツ化【ExcelVBA】 高速化のため配列で計算することは多いと思います。 最終的に結果をワークシートへ貼り付ける処理も多く、 今回パーツ化したのでコピペでそのまま使用可能です。 上記をお好きなモジュール内にコピペしてください。 実際に使...2022.03.20 0配列(一次元/二次元)
配列(一次元/二次元)戻り値として配列を受け取る【ExcelVBA】 配列を戻り値として取得したい 配列を引数として渡す事も出来ましたが、戻り値を可変で受け取りたい場合があります。 変数を動的配列にすることで、戻り値を配列で取得可能です 配列を戻り値として取得するサンプルコード 注意点 ...2022.01.15 0配列(一次元/二次元)