マクロのサンプルをダウンロードし、実際に動かして見たところ、動きません。
未読分:3件
昨日以降(0) 2日前以降(0) 3日前以降(0) 4日前以降(0) 5日前以降(0)
近田 伸矢, 植木 悠二, 上田 寛
IEのデータ収集&自動操作のプログラミング本はこの1冊だけ!IEの起動やポップアップウィンドウ、表示を制御する基本的なコードはもちろん、テキストボックスやラジオボタン、表、ハイパーリンクなどのHTML部品を制御する方法など、自動操作に欠かせないノウハウを丁寧に解説。
Message#3 2015年2月4日(水)21時18分 From: にかっぽっか | 返事 削除 変更 |
> 動きますね、普通に > > sendkeysのタイミングの問題でしょうか? > > SendKeys "%S", True '保存を押すキー送信 > ↑ > タイミングをずらすために、ここにブレークポイントを置き、一旦停止してから実行をしてみてください そこにブレークポイントを置いて一旦停止させてみたのですが、そこまでたどり着けないようで、その続きを実行出来ませんでした。▶︎(←このボタンが押せません) |
Message#2 2015年2月4日(水)21時18分 From: 鮫肌 | 返事 削除 変更 |
にかっぽっかのメッセージ(#1)への返事 > excel VBA でのIE操作について。 > 勉強するために以下の書籍を購入し、マクロのサンプルをダウンロードし、実際に動かして見たところ、動きません。 > 環境はWIN7 64bit excel2007(なので32bit) です。 > 別のPC(OSは同じWIN7 64bit)でexcel2010(64bit)のものでは、宣言にPtrSafe を付加することで無事動作しました。 > > どうすれば同じように動作しますか? > 対処法があればどなたか教えて欲しいのですが。 > 動きますね、普通に sendkeysのタイミングの問題でしょうか? SendKeys "%S", True '保存を押すキー送信 ↑ タイミングをずらすために、ここにブレークポイントを置き、一旦停止してから実行をしてみてください |
Message#1 2015年2月4日(水)21時12分 From: にかっぽっか | 返事 削除 変更 |
excel VBA でのIE操作について。 勉強するために以下の書籍を購入し、マクロのサンプルをダウンロードし、実際に動かして見たところ、動きません。 環境はWIN7 64bit excel2007(なので32bit) です。 別のPC(OSは同じWIN7 64bit)でexcel2010(64bit)のものでは、宣言にPtrSafe を付加することで無事動作しました。 どうすれば同じように動作しますか? 対処法があればどなたか教えて欲しいのですが。 『書籍名:EXCELVBAでIEを思いのままに操作できるプログラミング術』 サンプルマクロはこちらからダウンロードも出来ます。(http://book.impress.co.jp/books/3384_4 )、 Do While objIE.hWnd = GetLastActivePopup(objIE.hWnd) ↑のこの部分で引っかかっているみたいです。 保存しますか?の通知は表示され、オレンジ色に点滅したままになり、保存することが出来ません。 コードは以下の通りです。 Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Public Declare Function GetLastActivePopup Lib "user32" _ (ByVal hWnd As Long) As Long 'SendKeys "abc" 'a→b→cとキーストロークを送信 'SendKeys "{TAB 2}{ENTER}" 'TAB→TAB→ENTERとキーストロークを送信 'SendKeys "+{TAB}{ENTER}" 'SHIHT+TAB→ENTERとキーストロークを送信 'SendKeys "%Y" 'ALT+Yとキーストロークを送信 Sub SendKeys3() Dim objIE As Object 'IEを開いてファイルの保存URLを開く Set objIE = CreateObject("InternetExplorer.Application") objIE.Visible = True objIE.navigate "http://book.impress.co.jp/appended/3384/IE2.html" 'Busyの間、待機 Do While objIE.Busy Sleep 1 Loop 'Busyとなるまで、待機 Do Until objIE.Busy Sleep 1 Loop 'ファイルを開くダイアログが表示されるまでループ Do While objIE.hWnd = GetLastActivePopup(objIE.hWnd) DoEvents Loop SendKeys "%S", True '保存を押すキー送信 End Sub それと、この件とは別ですが、先日させて頂いた質問について、ご回答により解決出来ていたのに、解決済みにしておらず、投票になってしまって大変申し訳ありません。 ご連絡頂いていたのに、気付かず申し訳ありませんでした。 携帯アプリからうまく書き込みにたどり着けませんでした。m(__)m 補足 訂正します。 Do While objIE.hWnd = GetLastActivePopup(objIE.hWnd) でつまづいているとお伝えしたのですが、これは私がIEを閉じてしまったから出た表示なのでしょうか?? とりあえずステップインで一つづつ試してみたところ、 Do Until objIE.Busy Sleep 1 Loop のところでずっとループしてしまって抜けだせません。 どういったことが考えられるでしょうか? |
昨日以降 2日前以降 3日前以降 4日前以降 5日前以降