VBA

配列(一次元/二次元)

二次元配列の一部をワークシートに貼付する【ExcelVBA】

2次元配列の一部をワークシートに貼付する 2次元配列を使用していると、特定の指定行のみ または指定列のみ セルに結果としてペーストしたいケースがあります。 2次元配列の一部をワークシートに貼付するサン...
2
配列(一次元/二次元)

2次元配列の特定の列or行を 1次元配列に変換する【ExcelVBA】

2次元配列を 1次元配列に変換する 2次元配列を使用していると、そのまま処理する場合だけでなく、 特定の指定行のみ または指定列のみに対して処理をしたいケースがあります。 その場合、新たに一次元配列と...
0
配列(一次元/二次元)

配列にセル範囲を格納/動的配列をセルに貼付【ExcelVBA】

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

「二次元配列で任意の列をキーにソート(並び替え)」をパーツ化する【ExcelVBA】

使い方 上記をコピペでお好きなモジュール内に記載してください。 注意点 Option Base 1を設定しないと動作しません ソート方法は「バブルソート」です。 クイックソートに比べて遅いですが数千件...
0
_基本

特定のシートのみで、OnKeyイベントを取得したい【WorkSheet_Change】【ExcelVBA】

Onkeyメソッドは 開いている全ブックで動作する Onkeyメソッドでは、自作のショートカットキー作成や、 F1 のヘルプキーを無反応にすることが可能です。 ■参考記事 「Ctrl+Shift+Q」...
2
VBATips

OnkeyメソッドでEnterキーが効かない場合の対処法【ExcelVBA】

Onkeyメソッドで、Enterキーが効かない(反応がない) Onkeyメソッドでは、自作のショートカットキー作成や、 F1 のヘルプキーを無反応にすることが可能です。 ■参考記事 「Ctrl+Shi...
0
VBATips

SendKeysでキーが効かない場合の対処法【ExcelVBA】

SendKeysメソッドで、Enterキーが効かない(押下できない) SendKeysメソッドでは、VBAでの最終手段、キー押下を物理的に行う事が可能です。 別のアプリケーションやオブジェクト、Int...
0
関数・メソッド

物理キーを反映させる【SendKeysメソッド】

構文 SendKeys String String・・・・・貼り付ける内容 Wait   ・・・・・【省略可能】True(キー操作完了するまで他の処理を待つ)               False(...
0
Internet Explorer自動操作

VBAでIE操作「IEをJavaScriptで画面スクロールさせる」

IEを画面スクロールしたい Excel VBAマクロでIEを自動制御する際、IEの画面をスクロールさせることも可能です。 Twitter等の画面下部に移動する事で、ページを読み込むようなサイトでは効果...
0
Internet Explorer自動操作

VBAでIE操作「Web上のテーブル要素(表)からデータを抜き出す」

テーブル要素から データを抜き出したい Excel VBAでIE自動制御では、Web上の表(テーブル要素)からデータを抜き出す処理も多いです。 ■テーブル要素を抜き出したい ・ヤフオクから、落札相場の...
0
Internet Explorer自動操作

VBAでIE操作「Internet Explorerをシアターモードで表示する(F11と同動作)」

Internet Explorerをシアターモードで表示する Excel VBAマクロでIEを自動操作する際、画面をシアターモードで表示させることも可能です。 シアターモードとはIE起動後、手動で F...
0
Internet Explorer自動操作

VBAでIE操作「Internet Explorerをフルスクリーンで表示する」

Internet Explorerをフルスクリーンで表示する Excel VBAマクロでIEを自動操作する際、画面サイズをフルスクリーンで表示させることも可能です。 フルスクリーン(全画面表示)をする...
0
VBATips

特定セル範囲で値が変更された時に処理を実行【WorkSheet_Change】【ExcelVBA】

特定セル範囲で値が変更された時、処理を実行させたい 特定条件を満たした場合に、マクロを起動させたい場合があります。 今回は、指定のセル範囲でセルの値が変更されていれば(変更した内容が指定した範囲に含ま...
0
VBATips

共有のエクセルファイルを誰が開いたか記録する【ExcelVBA】

共有ファイルを誰が開いたかログを記録したい Excelで情報共有や閲覧チェックなどを共有サーバーのエクセルファイルで管理するケースがあります。 その際、誰が開いたのか(誰がアクセスしたのか)を記録をす...
0
人気記事一覧

2020年9月の人気記事ランキング

2020年9月のランキング Google Analyticsのアクセスデータを元に、記事ランキングをまとめました。 【VBA基本】変数のデータ型一覧 【ExcelVBA】和暦から西暦に変換する-西暦か...
0
Internet Explorer自動操作

Webで取得したデータの半角スペース削除ができない【ExcelVBA】

Webで取得したデータの半角スペースが除去できない 最近、VBA開発でハマったケースです。 VBAでIE操作をしている際、取得した数値データを分析・加工が出来ず、エラーが発生しました。 ■現象 ・目視...
0
VBATips

「指定した範囲をタブ区切り(TSV)テキスト出力して保存する」【VBAマクロ】

選択した範囲をTSV出力(タブ区切りテキスト出力)したい Excelで、特定の範囲をタブ区切りのTXTファイルに出力し 他アプリケーションへインポートさせたいケースがあります。 下記のようにActiv...
0
VBATips

「指定した範囲をCSV出力して保存する」【VBAマクロ】

選択した範囲をCSV出力したい Excelで、特定の範囲をCSVファイルに出力し 他アプリケーションへインポートさせたいケースがあります。 下記のようにActiveSheetや、すべてのシートをCSV...
0
VBATips

「シートで指定したセル範囲の比較処理」をパーツ化する【ExcelVBA】

使い方 上記をお好きなモジュール内にコピペしてください。 実際に使用する時は以下のような形で使用してください。 結果イメージ 指定した範囲でセルの値が異なれば、背景色を赤色にします。 出力データが、手...
0
VBATips

Rangeを開始行・列/最終行・列に変換する【ExcelVBA】

Rangeから開始行や最終行を取得したい 関数を作成したい時に引数は極力減らしたいものです。 マクロでは最終行や最終列などセルのデータ取得はよく使いますが、 セル範囲を指定して引数で値を渡し、値を受け...
0