ExcelVBA 【ExcelVBA】セルの値や罫線、背景を削除|Clearメソッド ワークシートの値や罫線、背景を削除する際はClearメソッドを使います。Clearメソッドは関連メソッドがたくさんあるのでどれを使えば良いか迷ってしまう事が多い様です。どのメソッドを使えば良いのか体系的に理解できるように一覧にしてみました。 2024.10.21 ExcelVBAコード全般
ExcelVBA VBA×XLOOKUP関数|Rangeオブジェクト×配列でシンプルなコードを作る 今回はVBAでもXLOOKUP関数を使ってみます。Rangeオブジェクトや配列を使ってできるだけシンプルなコーディングを意識しました。解説ではXLOOKUP関数の説明や気を付けてほしいポイントを3つ用意して解説しています。 2024.11.14 ExcelVBA
ExcelVBA 連想配列のアイテムは複数の値を持つことができる|配列やコレクションも使用可能 連想配列のアイテムは複数の値を持つことができます 連想配列(Dictionary)はアイテムとキーを一対一の関係で保持することができるオブジェクトです。 基本的には1つのキーに対して1つのアイテムになりますが応用を利かせることで複数の値を持... 2024.10.21 ExcelVBA
ExcelVBA Rangeオブジェクトを使って範囲指定した値をワークシート間で代入する|VBA 「範囲指定したセルの情報を別のワークシートに貼り付ける」という作業をVBAを使って表現してみます。コピー&ペーストを連想してしまうのですがやることは「代入」です。代入の方が処理速度も速いしコードもシンプルになります。是非お試しください。 2024.10.30 ExcelVBAコード全般
ExcelVBA 【Rangeオブジェクト】範囲指定セルのコピー&ペースト|イコールで高速に処理 範囲指定セルのコピー&ペーストはイコールで高速に処理できます。Rangeオブジェクトを使って範囲指定されたセルの値でコピペを実行します。実際はコピペではなく値の代入ですがコピペと同じ効果を実現しつつ処理速度も速いのでこの方法を採用しました。 2024.10.21 ExcelVBAコード全般
ExcelVBA 【高速】エクセルマクロ|任意の情報を格納したQRコードを1クリックで複数作成する 任意の情報を格納したQRコードを1クリックで複数作成します。1、複数のQRコードを1クリックで作成。2、作成したQRコードには固有の情報を格納。3、作成したQRコードを1クリックで削除したいという要望に応えたコードを用意しました。 2024.09.18 ExcelVBA外部Appとの連携
ExcelVBA VBA|複数のシートをコピーしてから新規ブックとして保存する 複数のシートをコピーしてから新規ブックとして保存する方法を紹介。ポイントは3つ。1、「複数のシートを別ブックにコピーしたい」2、「コピー先のブックではコピー元の表示(印刷範囲など)を維持したい」3、「作成した別ブックを保存したい」です。 2024.09.18 ExcelVBAコード全般
ExcelVBA VBA×連想配列|キーを使いアイテムを抽出|2次元配列で同様の作業を構築し比較する 連想配列を使いたいので教えてくださいという質問を受けました。本記事では連想配列からキーを使ってアイテムを抽出する方法を解説します。紹介する方法を使えば連想配列から簡単に値を取り出すことができる様になります。 2024.09.18 ExcelVBA配列
ExcelVBA 【検索】Findメソッドを使って完全一致で文字列を探す方法|VBA VBAには文字列を探す方法がいくつかあります。本記事ではFindメソッドの使い方を紹介します。3つのポイントをもとに解説を進めます。|1_Findメソッドとは2_どんなパラメータがあるのか3_完全一致で文字列を探す方法|の3つです。 2024.09.18 ExcelVBAコード全般
ExcelVBA エクセルVBA×Outlook|複数の宛先毎に添付ファイル付きメールを作成する 「ExcelVBAからOutlookを使って複数人に自動でメールを送りたい」という質問に回答するシリーズです。今回は「複数の宛先へのメールを用意する中で宛先ごとに異なるファイルを添付させる」という作業を構築していきます。 2024.09.18 ExcelVBA外部Appとの連携
ExcelVBA Selenium×ExcelVBA|ラジオボタンの選択状態をチェックする方法 今回は複数の要素の中から1つの要素を選択する際に使用するラジオボタンについて記事を用意します。記事を読んでいただくとラジオボタンの選択状態をチェックする事が出来る様になります。読んでいただくとチェックボックスの理解にもつながりますよ。 2024.10.04 ExcelVBAWebスクレイピング
ExcelVBA 【Selenium×VBA】テーブルの情報を取得|配列を使えば行数と列数も分かる Webスクレイピングにおける便利機能を紹介します。「テーブルごと情報を配列に格納する」という方法です。テーブルの状態毎にコードを用意しなくても良いので時短にもつながります。追加でテーブルの行数と列数も獲得する事ができる仕様にしました。 2024.10.04 ExcelVBAWebスクレイピング
ExcelVBA 【Selenium×VBA】ブラウザの最大化|ウインドウの大きさや位置を変える Seleniumbasic経由で画面サイズを取得する事でウインドウの表示方法をコントロールする事ができます。取得した情報をもとにウインドウの最大化を含め大きさ、位置を決めることができます。うまく使えばプレゼンにも使う事ができますよ。 2024.09.18 ExcelVBAWebスクレイピング
ExcelVBA 【Selenium×VBA】要素の有無を確認|実行時エラー7への対策 IsElementPresentメソッドを使うとWebページ内に指定要素が存在するのかをチェックする事ができます。加えてエラー回避の役割も果たします。応用編として内容が日々変化するURLの情報を取得する方法についてのヒントを提供します。 2024.09.18 ExcelVBAWebスクレイピング
ExcelVBA VBAを使ってWebからデータを取得|Webスクレイピングとは?できる事を教えて 「Webスクレイピングで何ができるのか?」回答はこの2つです。「Webサイトから情報を抜き取る」と「Webサイトに情報を入力する」です。これだけでは分かりにくいので4分程の動画を用意しました。何ができるのか視覚でとらえる事ができます。 2024.07.18 ExcelVBAWebスクレイピング
ExcelVBA 【selenium×ExcelVBA】ウインドウ、タブを切り替える Seleniumではウインドウのタイトルを指定する事で必要なウインドウを掴むことができます。ウインドウを指定する理由は各URLの要素はウインドウに紐付いているからです。タイトルを指定せずに隣のウインドウをつかむという操作もできます。 2024.10.04 ExcelVBAWebスクレイピング
ExcelVBA 【selenium×VBA】取得したURLでハイパーリンクをつくる スクレイピングでは特定のリンク先のURLを取得することもできます。取得したURLを使ってExcel上にハイパーリンクを用意することも可能です。Web内からリンク先記事のURLとタイトルを取得してExcelにハイパーリンクをセットします。 2024.10.04 ExcelVBAWebスクレイピング
ExcelVBA 【VBA×selenium×JS】任意の要素まで簡単にスクロール 画面スクロールを再現します。今回は少しレベルを上げて他の言語を交えてコードを書いてみましょう。JavaScriptを使用します。要素を動的にコントロールする事が出来る様になります。コードはコピペで使って試せるように用意しています。 2024.10.04 ExcelVBAWebスクレイピング
ExcelVBA 【selenium×VBA】右クリックを含めたマウス操作を再現 Webスクレイピングの際頻度は少ないのですが右クリックを必要とする場面があります。Webアプリケーションの操作をする際にご質問いただく事が多いという傾向があります。今回は右クリックとその後に表示される選択肢を選ぶためのコードを紹介します。 2024.09.18 ExcelVBAWebスクレイピング
ExcelVBA 【Edge×Selenium×VBA】スクレイピング時の実行時エラー0への対策 Edge×selenium×VBAでWebスクレイピングを検討されている方向けの記事です。実行時エラー0でコードが止まった方は是非記事をご覧ください。ブラウザのバージョンアップに伴うドライバーの入れ替えについても参考になる記事です。 2024.09.18 ExcelVBAWebスクレイピング
ExcelVBA 【ExcelVBA】セルの値や罫線、背景を削除|Clearメソッド ワークシートの値や罫線、背景を削除する際はClearメソッドを使います。Clearメソッドは関連メソッドがたくさんあるのでどれを使えば良いか迷ってしまう事が多い様です。どのメソッドを使えば良いのか体系的に理解できるように一覧にしてみました。 2024.10.21 ExcelVBAコード全般
ExcelVBA Rangeオブジェクトを使って範囲指定した値をワークシート間で代入する|VBA 「範囲指定したセルの情報を別のワークシートに貼り付ける」という作業をVBAを使って表現してみます。コピー&ペーストを連想してしまうのですがやることは「代入」です。代入の方が処理速度も速いしコードもシンプルになります。是非お試しください。 2024.10.30 ExcelVBAコード全般
ExcelVBA 【Rangeオブジェクト】範囲指定セルのコピー&ペースト|イコールで高速に処理 範囲指定セルのコピー&ペーストはイコールで高速に処理できます。Rangeオブジェクトを使って範囲指定されたセルの値でコピペを実行します。実際はコピペではなく値の代入ですがコピペと同じ効果を実現しつつ処理速度も速いのでこの方法を採用しました。 2024.10.21 ExcelVBAコード全般
ExcelVBA VBA|複数のシートをコピーしてから新規ブックとして保存する 複数のシートをコピーしてから新規ブックとして保存する方法を紹介。ポイントは3つ。1、「複数のシートを別ブックにコピーしたい」2、「コピー先のブックではコピー元の表示(印刷範囲など)を維持したい」3、「作成した別ブックを保存したい」です。 2024.09.18 ExcelVBAコード全般
ExcelVBA 【検索】Findメソッドを使って完全一致で文字列を探す方法|VBA VBAには文字列を探す方法がいくつかあります。本記事ではFindメソッドの使い方を紹介します。3つのポイントをもとに解説を進めます。|1_Findメソッドとは2_どんなパラメータがあるのか3_完全一致で文字列を探す方法|の3つです。 2024.09.18 ExcelVBAコード全般
ExcelVBA VBA|パスワード付きワークシートの保護と解除を単一プロシージャで実行する 「VBAでワークシートの保護と解除を行いたいです。」という質問をいただきました。ExcelVBAでもワークシートの保護と解除を用意する事ができます。1つのプロシージャの中で保護と解除を使い分ける事で効率よくマクロを運用する事ができますよ。 2024.09.18 ExcelVBAコード全般
ExcelVBA マクロで文字列の置換はVBA関数のReplace|4つの方法を比較 置換についてはどの方法を使えばよいのか分からないという質問が多いです。実際に方法は複数存在します。本記事では4つの方法を深堀し比較して1つの結論を出しました。マクロで文字列の置換はVBA関数のReplace関数1択です。 2024.09.18 ExcelVBAコード全般
ExcelVBA VBA|InputBoxメソッドで戻り値空白とキャンセルの処理を分ける InputBoxメソッドでは戻り値空白の時とキャンセルボタンが押された時の処理を分ける事ができます。本記事ではInputBoxメソッドと一緒にIsNumeric関数を使ってユーザーが使いやすい操作環境を用意します。 2024.09.18 ExcelVBAコード全般条件分岐と繰り返し処理
ExcelVBA VBAのFindメソッドは変数が難しい|文字列検索はLike演算子! 私は特定の文字列や数値の検索時にFindメソッドは使いません。戻り値であるRangeオブジェクトの扱いが難しいからです。本記事ではFindメソッドの問題点を整理したうえでより簡単なLike演算子を使ったコードを紹介します。 2024.09.18 ExcelVBAコード全般
ExcelVBA マクロでフォルダ内のファイル名を取得|Excel以外の拡張子にも対応 「フォルダ内のファイル名を簡単に取得出来ませんか?」という問い合わせに対する回答を用意しました。マクロなら対応可能です。Excel以外の拡張子でもファイル名を取得する事ができます。拡張子を絞りたい方にも関連記事を用意しています。 2024.09.18 ExcelVBAコード全般条件分岐と繰り返し処理
ExcelVBA VBA|コードが長いプロシージャを短く切り分ける|マクロを部品化する VBAが理解できる様になるとコードは短くスッキリ書けるのですが勉強初期ではプロシージャが長くなりがちです。可読性も作業性も悪いです。本記事では長いプロシージャを3つに分けて読みやすくするのと同時に作業性(メンテナンス性)も向上させます。 2024.10.08 ExcelVBAコード全般画像の取り回し
ExcelVBA 【VBA_再帰】複数フォルダ内を検索拡張子を決めて画像を取り出す 1つ前の記事で再帰の基本構造を解説しました。次は応用編です。階層の異なるフォルダ群を検索し特定の拡張子を持った画像データを取り出すというコードを紹介します。再帰を使う事でフォルダ群の隅々まで画像を検索する事ができます。 2024.09.18 ExcelVBAコード全般条件分岐と繰り返し処理画像の取り回し
ExcelVBA AddPictureメソッドエラー対策|指定された値は境界を超えています AddPictureメソッドを使用した際「指定された値は境界を超えています」というエラーが出ます。引数のLinkToFileとSaveWithDocumentが両方共Falseの時にこのエラーが発生するのでエラーが出ない様に対策します。 2024.09.18 ExcelVBA画像の取り回し
ExcelVBA AddPictureメソッドの第2、3引数の組み合わせ確認テスト LinkToFileとSaveWithDocumentという引数について解説します。引数の内容自体が難しいのでうまく使いこなせている人は少ないです。記事内では全通りの組み合わせをテストしてみます。結果をマトリクスにまとめました。 2023.06.17 ExcelVBA画像の取り回し
ExcelVBA VBAで画像を取り込む高速で画像自体を取得しエクセルに貼り付ける 「一定条件のもとフォルダから画像を取り出してエクセルに貼り付けるマクロを作りたい」の続編。900枚の画像処理は3秒で完了。2度手間は解消、0.1秒のウエイトは無しでも安定稼働します。キーはAddpictureメソッドです。 2024.09.18 ExcelVBA画像の取り回し
ExcelVBA VBAで画像を取り込むフォルダを周回必要な画像をエクセルに貼り付け 複数フォルダ内の画像をキーワードを元にエクセルに貼り付ける方法を紹介 「一定条件のもとフォルダから画像を取り出しエクセルに貼り付けるマクロを作りたい」という依頼に対して作業をしてみました。 2024.09.18 ExcelVBAプログレスバー画像の取り回し