WSHでブラウザーのある指定URLを開くまで実現できました(下記の例)が、タブキーで移動する操作を実現させ、移動した部分の文字がある特定の文字の時、またそこのURLに移動させたいのですが、可能でしょうか。
Set objIE = CreateObject
("InternetExplorer.Application")
objIE.Navigate("about:blank")
strURL = "http://・・・/"
Set objShell = CreateObject("Wscript.Shell")
objShell.Run(strURL)
No.2
- 回答日時:
>移動した先の文字の取り出しがわかりません。
実現可能かどうか試してないのですが、一応いくつかアイデアはあるのですが、とても面倒です。
タブ移動とは直接関係なく
DOMを使って文字を取り出すのが良いと思います。
その場合は、WEBページの構造がわかっていないといけませんが。
ところで
タブキーによる移動とかをWSHから行おうとする目的はなんですか?
目で見て行う必要があるなら、直接キーボードから操作をすればいいし、
自動で行うなら、タブキーを使う必要がない(DOMで内容を読み出し特定の文字のリンクを取り出すことはできます)と思うのですが。
この回答への補足
BLUEPIXYさん、また回答いただきありがとうございます。DOMを利用する方法を調べてみます。タブキーを利用するのはIEの「戻る」と合わせてダウンロードするサイトを移動するためです。今、この「戻る」をWSHで実現する方法で困っているのですが、ご存じありませんか。よろしくお願いします。
補足日時:2006/03/26 07:50No.3
- 回答日時:
>「戻る」をWSHで実現する方法
勘違いしているかもしれませんが、簡単なサンプルを作ってみました。
動作としては、このQNo.2046770を開き、その他のプログラムをクリックしてカテゴリページを開き「戻る」を実行するというものです。
----------------------------------------------------------------
Dim IE
Dim Links, aLink
Set IE = WScript.CreateObject("InternetExplorer.Application")
'このページ
IE.Navigate ("http://okwave.jp/kotaeru.php3?qid=2046770")
IE.Visible=true '表示する
While IE.busy: Wend
While IE.Document.readyState <> "complete": Wend
Set Links =IE.Document.links
'全てのリンクを調べる
for each aLink in Links
if aLink.innerText = "その他(プログラミング)" then 'リンクの文字列を調べる
exit for '探していたリンクが見つかったらループを抜ける
end if
next
aLink.click 'このリンクをクリックする
While IE.Document.readyState <> "complete": Wend '読込待ち
IE.GoBack() '戻る
'IE.quit '終了
この回答への補足
BLUEPIXYさん、回答ありがとうございます。ただ、GOBACKでエラーになります。調べましたが、どうもタブキーでリンク先に移動しても履歴が残らずgobackが有効にならないようです。
補足日時:2006/03/27 21:01No.5
- 回答日時:
>どうもタブキーでリンク先に移動してENTERを送っても履歴が残らずgobackが有効にならないようです。
ENTER を送ったときに画面は変移しているのですよね?
画面が表示されて
IEの←戻るのボタンが使えるようになっていれば
GoBack( ) は使えます。
#3でもやっているように、
While IE.Document.readyState <> "complete": Wend '読込待ち
とかして読込が完了してからでないと、GoBack( ) も使えません。
おそらくそういうことだと思いますが・
この回答への補足
while ・・・を追加して読み込みを完了していても(この前にwsh.sleep(6000)を挿入しております。)
エラーメッセージ(エラーを特定できません)は同じでした。
以下実際のプログラムです
Set objIE = CreateObject("InternetExplorer.Application")
objIE.Navigate("about:blank")
strURL = "http://・・・"
Set objShell = CreateObject("Wscript.Shell")
objShell.Run(strURL)
WScript.Sleep(3000)
for i= 1 to 16
objShell.SendKeys("{TAB}")
WScript.Sleep(100)
next
objShell.SendKeys("{ENTER}")
WScript.Sleep(6000)
While objIE.Document.readyState <> "complete": Wend
objIE.GoBack()
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel-VBAの「しばらくお待ちください」のダイアログが自動的に閉じない 2 2023/05/24 15:31
- Excel(エクセル) ファイル一覧表を使ったファイルの移動 5 2022/08/10 15:37
- PowerPoint(パワーポイント) ExcelのVBAコードについて教えてください。 3 2022/05/25 14:32
- Visual Basic(VBA) 2つ目のコンボボックスが動作しません。 3 2023/03/25 12:29
- Excel(エクセル) マクロで行を追加、削除すると行位置がずれますが、解決方法はありませんか?。 5 2022/05/28 16:03
- Access(アクセス) DoCmd.SearchForRecord が動かない時の解決方法 3 2022/07/22 15:31
- デスクトップパソコン ん~…分からん 7 2022/06/10 10:47
- Excel(エクセル) エクセル 値をコピペした時に、条件付き書式で塗られた背景色もペーストさせる 2 2023/04/05 17:21
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- Excel(エクセル) 【マクロ】フォルダAからダBへファイルを、ファイルの更新日時の条件で、1つづつ移動するには? 3 2022/08/25 09:56
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
過剰なオブジェクト指向脳から...
-
16x16のスプライトフォント
-
本格的なWebアプリを公開する時...
-
Pythonって何を意識した言語な...
-
プログラミング未経験者(殆ど未...
-
オブジェクト指向プログラミン...
-
プログラミング初心者です。 Wi...
-
vba クリップボードクリアにつ...
-
chatGPTで次々と質問をしていく...
-
家庭のパソコンで Python の 環...
-
CLispのloop内の挙動について
-
昔のパソコン少年の武勇伝「店...
-
GoogleAppsScript文字列置換の...
-
sublimit textっていうエディタ...
-
最新のプログラム言語を学ぶに...
-
初心者powershellのPS1ファイル...
-
プログラマーと学歴の関係性に...
-
pythonにてseleniumを使うも、...
-
Google ColaboでGUI作成
-
そのまま使っただけなのに・・...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PDFファイルの向きを縦から横に...
-
ページング方式について
-
複数開いているedgeページやEXC...
-
Wordのスクロールバーが短くなった
-
本当にこのページを閉じてもよ...
-
画像を右クリック プロパティで...
-
「ページでエラーが発生しまし...
-
ACCESSのレポートで
-
Firefoxのツーバーに登録
-
HPが白紙で見れない
-
windows7でインターネット閲覧...
-
excel文書、フッターに表示させ...
-
マイページはどこを開くの
-
デジタル時計の時刻合わせの方...
-
ウインドウを毎回同じ位置、大...
-
エクセルのシート上に別のシー...
-
スクリプトって、何ですか?ど...
-
Javascript_submit()完了後に処...
-
デスクトップ画面を4分割するには
-
Excelでワードアートや図を常に...
おすすめ情報