ExcelVBA

配列(一次元/二次元)

配列で条件に「完全一致」した要素を取得する【ExcelVBA】

配列内の要素を、完全一致で検索したい場合があります。 Dictionaryの連想配列へ格納して検索した方が高速ですが、コード内の値の重複が許可されません。 ここでは単純にFor~Loopで処理する形を...
0
配列(一次元/二次元)

配列から空白(Empty)を削除する【ExcelVBA】

セルを配列に取り込んだ際、空白が入り込んでしまった場合など、 空白を削除したい場合があります。 除去したいものがEmptyもしくは空文字列の場合は以下のコードで取り除くことが可能です。 配列から空白を...
0
配列(一次元/二次元)

配列(静的/動的)を別の配列にコピーする【ExcelVBA】

配列を別の配列にコピーしたい場合があります。 注意しないといけないのは静的配列と動的配列でコードの記載方法が異なります。 静的配列をコピーするサンプルコード 一次元配列、二次元配列共に静的配列の場合は...
0
配列(一次元/二次元)

一次元配列の並びを反転させる(降順に並び替える)【ExcelVBA】

使い方 上記をコピペでお好きなモジュール内に記載してください。 注意点 昇順のデータは、降順に並び替えします。 配列を昇順にしたい場合は、以下の記事を参照してください。 一次元配列を並び替え(ソート)...
0
配列(一次元/二次元)

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

使い方 上記をコピペでお好きなモジュール内に記載してください。 注意点 ソート方法は「クイックソート」です。 クイックソートはバブルソートなど他の一般的なソート処理の中で高速と言われています。 ただし...
0
配列(Dictionary)

配列内の重複した要素を削除する【Dictionary】【ExcelVBA】

Dictionaryクラス(連想配列)を利用して、一次元配列の重複要素を削除する事が可能です。 Dictionaryは重複した値を格納する事が出来ません。その特性を活用します。 配列で条件に一致した要...
0
配列(一次元/二次元)

配列で条件に「部分一致」した要素を取得する【Filter関数】【ExcelVBA】

Filter関数は配列から指定した文字列を含む配列だけを返します。 要素の検索をする場合や、フィルタリング(指定した文字列の要素数がどれくらいあるか)に使用します。 構文 Filter(SourceA...
0
配列(一次元/二次元)

配列かどうか調べる【IsArray関数】【ExcelVBA】

構文 IsArray(varname) 引数 varname 配列かどうか調べる変数を指定 戻り値 配列 TRUE 配列以外 FALSE IsArray関数で配列かどうか調べるサンプルコード その他 ...
0
配列(一次元/二次元)

配列をEraseで初期化する【ExcelVBA】

構文 Erase (arraylist) 引数 arraylist 初期化する配列を指定 Eraseで配列を初期化する 各配列の方の初期値 配列の型(静的) 初期値 データ型例 数値型 0 Integ...
0
配列(一次元/二次元)

指定した要素で配列を作成【Array関数】【ExcelVBA】

構文 Array(arglist) 引数 arglist 配列へ格納するデータをカンマ(,)で区切って指定 戻り値 配列を格納したVariantを返します VBAで高速処理に欠かせない配列処理 Exc...
0
配列(一次元/二次元)

配列の要素を結合する【Join関数】【ExcelVBA】

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

文字列を分割して配列に値を格納する【Split関数】

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

一次元/二次元配列が空(初期状態)かどうか判定する【Ubound関数応用】【ExcelVBA】

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

VBAでIE操作「クッキー情報(Cookie)を取得する」

Internet Explorerでクッキー情報(Cookie)を取得する Excel VBAマクロでIEを自動操作する際、クッキー情報(Cookie)を取得することも可能です。 あまりクッキー情報を...
0
Internet Explorer自動操作

VBAでIE操作「Webページに指定要素が存在するかチェックする」【エクセルマクロ】

VBAでIE自動制御で問題になるのが、オートメーションエラーです。 通常、IEを読み込み待ちをすれば問題ないのですが、この処理はあまり信用できません。 読み込み待ちでOKとなったにも関わらず、オブジェ...
0
Internet Explorer自動操作

「DeleteUrlCacheEntry」と「ClearMyTracksByProcess」キャッシュクリアの違い

VBAでIEのキャッシュクリアで検索すると、下記の二つの文言が出てきます。 キャッシュをクリアするのはどちらが正解でしょうか? ■キャッシュクリアで検索時引っかかる文言 ・DeleteUrlCache...
0
Internet Explorer自動操作

VBAでIE操作「ファイルをPCにダウンロードする」【エクセルマクロ】

VBAでIEを起動し、画像ファイルなどをダウンロードしたい時があります。 Win32APIのURLDownloadToFileでダウンロードする事が可能です。 Webページの画像をダウンロードするサン...
0
Internet Explorer自動操作

VBAでIE操作「キャッシュをクリアする」【エクセルマクロ】

VBAでIEを起動し、キャッシュを読み込んでしまい、正常な動作がしない為、 キャッシュを削除したい時があります。 IEのキャッシュをクリアするサンプルコード その他 定数 意味 8 インターネット一時...
0
Internet Explorer自動操作

VBAでIE操作「head要素・body要素を取得」【エクセルマクロ】

VBAでIEを起動し、Webページ内のhead要素を取得・body要素を取得する方法です。 基本的にはId要素やName要素を取得する場合と取得の仕方は同一です。 Webページのhead要素・body...
0
配列(一次元/二次元)

一次元/二次元配列の要素数の最小値を取得する【Lbound関数】

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