- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルVBAで、IEからコピーするには)
エクセルVBAでIEからコピーするには
このQ&Aのポイント
- エクセルVBAでIEからコピーするには、以下のコードを使用します。
- ただし、エクスプローラーと同時に開いている場合には実行時エラー438が発生します。
- エクセルとIEのみを開いている場合には正常に動作します。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
エクスプローラーにはTitle無かったと思います、その為エラーがでますね。 回避策はソースに2行追加すれば大丈夫だと思います。 For Each objWindow In objShell.Windows '起動中のタイトルを探して。 If InStr(LCase(objWindow.FullName), "iexplore.exe") Then '←この部分を追加 If Left(objWindow.Document.Title, 7) = "Office系" Then Set objIE = objWindow 'オブジェクトを代入 Msg = "Office系" Exit For End If End If '←この部分を追加(end if) Next これで、対象がIEで無ければその後の判定(Titleをチェックしたり)はしないので、エラーも無くなると思いますよ。
お礼
ご教授、ありがとうございます。 巧くいきました。 実は、ON ERRで逃げ、エクスプローラーを閉じて再度実行させようかなとも思っていたのですが。 本当に助かりました。