Fippiyのプログラム学習内容アウトプットBlog

日々の学習内容をアウトプットして振り返りを実施する。

VBA

VBAプログラム開発、スクレイピング・一覧取得【4-1】オブジェクト名を設定する

書籍一覧情報をワークシートへ取得していました。 今回はこのワークシートに取得済みのデータについて、Web側の情報取り込み時にWeb側で削除されている書籍についてワークシート側でも削除できるようにしていきます。 そして、その前段階として画像オブジェ…

VBAプログラム開発、スクレイピング・詳細データ取得拡張【4】書籍一覧処理の残工程を整理する

書籍一覧から詳細情報をワークシートへ表示できるようにしていました。 前回までに拡張機能として、ワークシートに取得済みの書籍に関しては新規に取得しないようにしました。 これによって今まで全て上書となっていた状態から、「未取得」だけを取り込める…

VBAプログラム開発、スクレイピング・詳細データ取得拡張【3】未取得書籍のみデータ取得する

今回作成しているのVBA処理の一つに「書籍情報を取得してワークシートへ一覧表示」というものがありました。 Web上に登録されている書籍情報の詳細ページへアクセスして、その内容をワークシートへ集約できるものです。 しかし、現状のままでは使いにくい点…

VBAプログラム開発、スクレイピング・ログイン機能【2-6】既存モジュールから共通部をクラスモジュール適用に変更する

全ての既存VBAで利用していた処理をクラスモジュールで動作するように再定義しました。 テスト用VBAで動作も確認できたので、既存VBAの一つをクラスモジュールを利用した動作となるように載せ替えを行っていきます。 今回の目的 なぜやるか やりたいこと や…

VBAプログラム開発、スクレイピング・ログイン機能【2-5-2】共通処理をクラスモジュール化する(ログイン処理)

前回記事にてクラスモジュールとして、IE読み込み待ち処理をクラス化しました。 当初これだけで、本番組み込みを考えていたのですが、事前にログイン処理についてもクラス化をしてから組み込むことにしました。 テスト用のモジュールを利用して、ログイン処…

VBAプログラム開発、スクレイピング・ログイン機能【2-5-1】共通処理をクラスモジュール化する(IE読み込み待ち処理)

ログイン機能をプロシージャ化して書籍登録VBAで扱える様にしました。 そこで、他に作成したVBAについても同様にログイン処理を加えていこうと考えていました。 しかし、毎回一つのモジュール内に同じプロシージャをコピーしています。IE読み込み待ちのモジ…

VBAプログラム開発、スクレイピング・ログイン機能【2-4】ログインプロシージャを既存VBAに適用する

ログインプロシージャ化が完了したので、いよいよ既存のVBAコードへ反映させてログイン機能付きの処理とします。 これが完成すれば、毎回手動でログインしていた手間がなくなります。 今回の目的 なぜやるか やりたいこと やったこと 実施内容 ログイン処理…

VBAプログラム開発、スクレイピング・ログイン機能【2-3-2】ログイン処理をプロシージャ化する(ログインプロシージャ作成)

メインプロシージャまで作成できました。続けてログインプロシージャを作成していきます。 実施内容 ログインプロシージャを作成する 作成コード オブジェクト設定 処理実施先URLの決定 指定URLへアクセスする アクセス完了後のURLを確認する(ログイン済) ア…

VBAプログラム開発、スクレイピング・ログイン機能【2-3-1】ログイン処理をプロシージャ化する(組み込み検討とメインプロシージャ作成)

VBAによる書籍管理サイトログイン処理は完成しました。 後は、今までに作成してきたVBAコードに対して追加することで、各処理実施前にログイン状況が確認できるようになります。 ※1記事にするには長くなったので分割しました。 今回の目的 なぜやるか やりた…

VBAプログラム開発、スクレイピング・ログイン機能【2-2】ログイン処理を作成する

ログイン機能の作成手順検討が終了したので、実際にVBAコードを作成して意図した通りの処理が行えることを確認していきます。 今回の目的 なぜやるか やりたいこと やったこと 実施内容 ログイン処理を作成する URLを確認する ログイン処理を行う ログイン後…

VBAプログラム開発、スクレイピング・ログイン機能【2-1】VBAによるWebページログイン機能をどうやって作成するか検討する

本記事からは、機能拡張を検討していた時に上げていたログイン機能を取り上げます。 まずは作成に至る経緯からVBAコードによるログインを行う為の手順を検討します。 今回の目的 なぜやるか やりたいこと やったこと 実施内容 ログイン機能が必要なわけ 作成…

VBAプログラム開発、スクレイピング・詳細データ取得拡張【1-7】書籍情報削除エラー対処を行う

書籍情報削除のVBAについて、Web側の書籍削除処理と削除結果をワークシートへ表示まではできました。 しかし、追加・削除を繰り返し試しながら作成する中で、削除時に失敗するケースを考慮できていませんでしたので対処をおこなっていきます。 今回の目的 な…

VBAプログラム開発、スクレイピング・詳細データ取得拡張【1-6】書籍情報削除結果を取得して表示する

登録処理は一端作成完了として、削除処理の機能を充実させます。 複数登録時に結果をワークシートへ表示させていたので、削除にたいしても削除結果を表示できるようにします 今回の目的 なぜやるか やりたいこと やったこと 実施内容 削除時のWeb画面遷移を…

VBAプログラム開発、スクレイピング・詳細データ取得拡張【1-5】上限を超える書籍を登録できるようにする

前回までにExcelワークシート上で登録したい書籍のISBNコードを読み取ってWeb書籍管理に登録し、結果をワークシートに出力するという処理を完成させました。 しかし、Web上の一括処理画面では一度に20件という制約を設けています。 Web側の設定を変更すれば…

VBAプログラム開発、スクレイピング・詳細データ取得拡張【1-4】書籍情報登録結果を取得して表示する

ISBNコードによる複数書籍登録をExcelVBAにて処理できるようになりました。しかし、登録結果はWeb上で表示されるのみであり、Web画面を消すと履歴としては残らないので、登録処理開始時にExcelワークシートへ記載したISBNコードに対して、処理結果を反映出来…

VBAプログラム開発、スクレイピング・詳細データ取得拡張【1-3】ISBNコード複数件をWebの書籍情報へ登録する

書籍情報の1件登録及び複数件削除まで作成できました。 今回は複数の書籍をまとめて登録できるようにします。 今回の目的 なぜやるか やりたいこと やったこと 実施内容 ISBNコード登録を複数件登録へ拡張する どうやってVBAコードを作成するか フォームに引…

VBAプログラム開発、スクレイピング・詳細データ取得拡張【1-2】Excel上で指定した書籍をWeb上データから削除する

前回はVBAを利用してワークシートのデータをWebに登録する工程を作成しました。 しかし、ISBNコード1件のみしか対応していないため複数件のデータに対応させます。 しかししかしその前に、複数件登録を作成する前にVBA操作によるデータ削除を先に実装するこ…

VBAプログラム開発、スクレイピング・詳細データ取得拡張【1-1】Excel上に入力したISBNコード1件をWebの書籍情報登録をする

拡張項目として上がっていた、Excel上に入力したISBNコードをVBAで認識させ、Webフォームを経由して書籍を登録できるようにしていきます。 まずは、ISBNコード1件をWeb反映できるようにします。 今回の目的 なぜやるか やりたいこと やったこと 実施内容 ど…

VBAプログラム開発、スクレイピング・詳細データ取得の拡張を検討する

書籍情報と所有書籍を保存しているWebアプリからスクレイピングによって書籍情報をExcelワークシートへと出力するVBAの基本処理としては作成完了しました。 今回からは、いくつか拡張をしてみたいと思っている内容を実施していきます。 主に実施してみたい内…

VBAプログラム開発、スクレイピング・データ要素を充実させる【6】コレクションを利用して、複数のデータを扱う

書籍一覧情報から詳細ページURLを収集し、詳細ページ内の情報をExcelワークシートへ出力という一連の処理ができました。 しかし、詳細ページURLは一度ワークシート上に保存していました。あくまで一時的に保存して処理させていたのですが、最終的に不要であ…

VBAプログラム開発、スクレイピング・データ要素を充実させる【5】IDと画像をExcel一覧表に追加する

詳細ページのテキスト情報を収集できるようにしました。 残る情報としては、画像データがあります。一覧表示データの取得時に作成していたコードを基に詳細ページでも表示できるようにします。 同様に、一覧表示データ取得時にIDも表示していたので、今回も…

VBAプログラム開発、スクレイピング・データ要素を充実させる【4】テキストデータ収集を全件対応させる

詳細ページURL一覧収集と、詳細ページ内のテキストデータ収集が作成できました。 今回は、この2つを組み合わせて、全URLから全テキスト情報を収集して、1回のVBA実行で全て動作できるようにします。 今回の目的 なぜやるか やりたいこと やったこと 実施内容…

VBAプログラム開発、スクレイピング・データ要素を充実させる【3】書籍詳細ページからテキストデータを収集する

詳細ページURLの収集が完了し、専用ワークシートに集約ができました。 今回は、詳細ページから必要な情報を取得できるようにします。 必要な情報が取得出来るようになれば、集約したURLと組み合わせることで、全情報の詳細情報を一度に収集できるようになる……

VBAプログラム開発、スクレイピング・データ要素を充実させる【2】書籍詳細ページURLを収集する

前回検討した書籍詳細情報ページからより詳細なデータを取得する手順を元に、書籍情報取得を実施していきます。 今回の目的 なぜやるか やりたいこと やったこと 実施内容 書籍詳細URLを取得する 実はもうできている 詳細ページURL取得専用VBAに編集する URL…

VBAプログラム開発、スクレイピング・データ要素を充実させる【1】詳細要素を確認する

書籍一覧取得+ページネーションURL取得を利用して書籍一覧情報をExcelワークシートへ取得できるようになりました。 しかし、取得できていたのは一覧表示画面に出力されていたデータのみです。 書籍一覧から書籍タイトルをクリックすると、詳細画面が表示さ…

VBAプログラム開発、スクレイピング・ページネーション対応する【3】書籍一覧取得VBAと全ページアクセスVBAを組み合わせる

前回記事にて書籍一覧ページのページネーションから次ページを特定して、全ページに順番にアクセスする処理を作成しました。 今回は、書籍情報の取得VBAと、ページネーションURL取得による全ページアクセスのVBAを組み合わせて、全ページの書籍情報を取得出…

VBAプログラム開発、スクレイピング・ページネーション対応する【2】次ページに遷移を繰り返し、全ページにアクセスする

前回はページネーションからURLを取得できるようにしました。 今回は、「次のページ」のURLを特定し、実際に次のページの情報を取得します。ページ遷移毎に次のページのURLを取得して最後のページまで自動で移動しつつデータ取得できるようにしていきます。 …

VBAプログラム開発、スクレイピング・ページネーション対応する【1】URLを取得する

前回までに、書籍情報一覧表示から、本の情報を取得してExcelのワークシートへデータを取得することが出来るようにしました。 しかし、取得していたのは最初のページのみ。 Webの一覧情報ページは件数が増えてくると複数ページに跨がった表示する仕様となっ…

VBAプログラム開発、スクレイピング・データ取得をレコード単位に修正する【3】レコード要素取得に対応した画像処理をする

前回までにスクレイピングデータをレコード単位で取得できるようにしました。 今回は取得したレコードデータを要素毎に指定のセルへ表示させていきます。 今回の目的 なぜやるか やりたいこと やったこと 実施内容 レコードデータから画像データを出力する …

VBAプログラム開発、スクレイピング・データ取得をレコード単位に修正する【2】レコード要素を取り出して表示する

前回までにスクレイピングデータをレコード単位で取得できるようにしました。 今回は取得したレコードデータを要素毎に指定のセルへ表示させていきます。 今回の目的 なぜやるか やりたいこと やったこと 実施内容 レコードデータを扱う 変数名を修正する タ…