アスパLab

アスパLab

LS000014_GoogleChromeでTagNameで指定した要素をクリックする

「LesserScraping」での要素(Element)の指定方法は8つあります。その中で「TagName」はHTMLのタグを指定して要素を指定できます。「name」や「ClassName」と同様、それだけでは要素を特定することができません。「id」「name」「class」が設定されていない要素も指定できますが、ページ構成の変更の影響を受けやすく、使用優先順位は低いです。このページではExcelVBA(マクロ)で指定した要素をGoogleChrome(以下chrome)でクリックする「Click」メソッドについて、TagNameで要素を指定する方法を解説します。要素の指定方法は他のメソッドでも同様です。
LesserScraping

LS000013_GoogleChromeでClassNameで指定した要素をクリックする

「LesserScraping」での要素(Element)の指定方法は8つあります。その中で「ClassName」は「name」と同様、それだけでは要素を特定することができません。しかし「id」や「name」が設定されていない要素にも「class」は指定されているということは多いため「name」に次いで使用優先順位の高い指定方法です。このページではExcelVBA(マクロ)で指定した要素をGoogleChrome(以下chrome)でクリックする「Click」メソッドについて、ClassNameで要素を指定する方法を解説します。要素の指定方法は他のメソッドでも同様です。
LesserScraping

LS000012_GoogleChromeでnameで指定した要素をクリックする

「LesserScraping」での要素(Element)の指定方法は8つあります。その中で「name」要素は「XPath」や「id」と異なりそれだけで要素を特定することができません。しかし「id」が設定されていない要素にも「name」は指定されているということは多いため「id」に次いで使用優先順位の高い指定方法です。このページではExcelVBA(マクロ)で指定した要素をGoogleChrome(以下chrome)でクリックする「Click」メソッドについて、nameで要素を指定する方法を解説します。要素の指定方法は他のメソッドでも同様です。
LesserScraping

LS000011_GoogleChromeでidで指定した要素をクリックする

「LesserScraping」での要素(Element)の指定方法は8つあります。その中で「id」要素は「XPath」と同様それだけで要素を特定することができます。このページではExcelVBA(マクロ)で指定した要素をGoogleChrome(以下chrome)でクリックする「Click」メソッドについて、idで要素を指定する方法を解説します。要素の指定方法は他のメソッドでも同様です。
LesserScraping

LS000010_GoogleChromeでXPathで指定した要素をクリックする

他のスクレイピングツールと同様「LesserScraping」でも「XPath」や「id」「name」などで操作対象の要素(Element)を特定してから操作を実行します。「LesserScraping」での要素の特定方法は8つあります。このページではExcelVBA(マクロ)で指定した要素をGoogleChrome(以下chrome)でクリックする「Click」メソッドについて、XPathで要素を指定する方法とあわせて解説します。
関数リファレンス

F0000026_配列のコピーを作成する

このページタイトルである関数は使用しないでください。ExcelVBAには配列のコピーを作成する方法が用意されており、関数を経由する必要がありません。無駄な処理です。他のプログラミング言語を学習したことのある方にはご理解頂けるかもしれませんが、ExcelVBAを学び始めた当初の私は、配列⇒配列の代入は値のコピーではなく参照渡しであるとは思い込んでいました。ExcelVBAは配列を値で代入することができます。
関数リファレンス

F0000025_配列の重複データを削除して返す

Excelの標準機能で「重複の削除」を利用したことがある人は多いと思います。私は常々データの扱いはセル上では行わず、変数や配列を使うことをおすすめしています。そのためシートやセル上でできることはすべて配列上で実行できるようにする義務が私にはあると考えています。そのために作った関数のひとつです・・・が、ExcelVBA(マクロ)上で重複を取り除くような処理は書き方も難しくなく、他の処理と並列して、例えばFormatでデータの書式を変更しつつ重複を削除していくというようなことができるため、単一の機能しか持たないこの関数の私の使用率はゼロに近いです。さらにいうと、重複を削除するだけという処理はExcelの標準機能として実装されており、わざわざ自動化するほどでもありません。一見便利そうに見える関数ですが未だ日の目をみることがない関数です。
関数リファレンス

F0000024_配列をcsv形式の文字列に変換する

ExcelVBA(マクロ)では、シートやセル上だけでデータを処理していると行数が増えるほどに実行速度の低下を感じると思います。また100万行を超えるデータを扱うとなると、シートではデータを保持しきれずどうしても、変数や配列といったデータを保持する方法を使用することになります。また例えば複数の顧客データを統合し出力するといった場合にも100万行を超える場合、シートに出力することができないためcsv等でデータを保存する必要があります(2024/08/21:最大1,048,576行)。この関数は配列に保持しているデータをcsv形式の文字列として出力します。この関数については特筆すべき点があります。それはその実行速度です。100万行を超えるデータであっても数秒~数十秒で処理が完了してしまいます。※PCスペックや列数に処理速度は影響を受けます。
関数リファレンス

F0000023_文字列から空白を取り除く

ExcelVBA(マクロ)では、高級なプログラミング言語と同様に文字列の操作をすることができる関数が用意されています。文字列操作で需要が高いのは文字列中の空白を削除する操作かと個人的に考えています。ユーザーからの入力を受け付けるときや、システムから抽出したデータを操作するときに、意図しない空白文字が含まれるということが少なからずあります。この関数はVBAの標準関数「Trim」では実現できない、文字列中に含まれつ空白を全消去できます。関数の中身はたった3行の非常に単純な内容ですが、この2行の入力の手間を省きたいという気持ちが、業務改善・効率化・品質向上の肝だと思います。
関数リファレンス

F0000022_配列を指定位置へ貼り付ける

ExcelVBA(マクロ)では高級なプログラミング言語とは異なり最初からブックやシートが用意されています。そのためデータをセル上でのみ扱ってRPAツールを作成することも可能です。しかし、大量の顧客データなどをすべてセル上で処理すると、目に見えて実行速度が低下します。画面更新を停止するなどの改善策もありますが、一番のおすすめはデータは変数や配列で扱うことです。すでに紹介済のシート内の指定した表を配列で取得する(F0000007)関数でデータを取り込むことができます。加工や集計を実施した後、このデータをcsvファイルなどにエクスポートすることもできますが、元の位置に貼り付けたい場合もあります。このページで紹介する関数では配列のデータをシートの指定位置へ貼り付けることができます。
スポンサーリンク