いいね!数

0

閲覧数
81

現在、Notes介してWebへの自動入力処理を行っています。

処理としては、登録文書から必要なフィールドの値を取得しスクリプトのCreateObjectでIEを起動して取得した値をWeb上に渡した上で自動ログインを行ってます。

2022年6月をもってIEのサポートが完全になくなることから、IEを介した自動入力処理も他のブラウザでの処理に切り替えるべく試行錯誤しています。

従来使用していたCreateObject方式では新しいブラウザ上での受け渡しが旨くいかないため、ネットでの処理を参考に色々と試行錯誤していますが、知識不足もあり旨くいきません。

Notesを経由してEdgeやChromeを使った値の自動入力に関する事例や何かアドバイスがあれば頂けると助かります。

宜しくお願いします。
 

サーバー情報:Windows Server20189.01 | クライアント情報:Windows109.01FP6 | 
カテゴリ:Notes - 使い方 | タグ:
  | 質問日時:Jun 17, 2022, 1:42:32 PM

回答・コメント

いいね!数

0

html取得のスクリプトは自分では書いたことがありませんが…

>CreateObjectでIEを起動して

というのは、CreateObject("InternetExplorer.application") を使う方法ということですね。

これを使わない方法としては、Web検索するとMicrosoft XML LibraryとMicrosoft HTML Object Libraryを使う方法がすぐ出てきました。ブラウザのレンダリングエンジンを使わないのでJavascriptを使ったページ等には使えないようですが、単純なHtmlで書かれたページなら情報取得できるようです。

vba前提の解説ですが、こちらが参考になると思います。

エクセルVBAでHTTPリクエストをする最も簡単なプログラム (tonari-it.com)

エクセルVBAでIEを使わずにHTMLドキュメントを取得する方法 (tonari-it.com)

回答日時:Jun 21, 2022, 6:55:18 PM

いいね!数

0

ようやく自力解決しました。

toseki 様からアドバイスいただきました、ブラウザを使用しないMicrosoft XML LibraryとMicrosoft HTML Object Libraryを使う方法が大きなヒントとなり問題解決が大きく前進しました。

当初はMicrosoft XML LibraryとMicrosoft HTML Object Libraryを使う方法をいろいろと試しましたが、これはHTMLの内容を取得したりファイルをダウンロードしたりするには有用の様でした。

取得したHTMLに値を送る方法はいろいろ試しましたが、結果的に実現できませんでした。

最終的には、CreateObjecを使いブラウザを立ち上げた後、keybd_eventハンドラーを使い該当の値をセットしました。

一応今のところうまく動いています。

toseki 様アドバイスありがとうございました。

助かりました。

回答日時:Jun 29, 2022, 3:38:56 PM