- ベストアンサー
VBScriptを勉強中Chromでは使えないの?
Chromeを操作するとなるとJscriptとかJavascriptとかパワーシェルとかを勉強しないとだめなんですか? 教えてくださいよろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
「Internet Explorer」は、オブジェクトとして操作できます。 Set ie = CreateObject("InternetExplorer.Application") これは、「VBScript」から、「Excel」や「Word」を操作できるのと同じ感覚です。 Set wd = CreateObject("Word.Application") Set ex = CreateObject("Excel.Application") たとえば、「Excel」の場合、このあと Set bk = ex.Workbooks.Open("D:\Programming\Sample.xlsx") Set sh = bk.Worksheets(1) sh.Range("A1").Value = "abc" などというように、操作できます。 上記はすべて「CreateObject」によって、それぞれのソフトを「オブジェクト」として取得できています(より正確な表現では「生成する」)。 このように「オブジェクト」として取得できれば、その機能(「Excel」の場合でしたら、ファイルを開いたり、セルに値を書き込んだり)を使えますが、「Chrome」は、「Microsoft」のソフトでも何でもありませんから、上記のように、そのソフトの動作を「Windows」で把握できないのです。 したがって、どうしても「Chrome」という場合には、「WScript.Shell」(「コマンドプロンプト」と考えてください)で、外部実行ファイルとして実行して、「SendKeys」によって、キーボード操作を送信するぐらいしか方法がありませんが、この場合、タイミングが非常に難しいです。 「InternetExplorer」の場合ですと、ちゃんと立ち上がったか、や、そのアドレスがちゃんと表示されたか、などを取得できるのですが、「Chrome」の場合には、そんなことは把握できないので、「WScript.Sleep(2000)」などによって、一時待機するような方法をとります。 どうしても「Chrome」でなければならない場合を除いて、「VBScript」でサイトを操作されたいのでしたら、「Internet Explorer」で行われるべきです。 ただ、「Internet Explorer」でも、その操作は「Excel」の操作などと比べると、はるかに難しいですが・・・ ちなみに、「VBScript」そのものは、廃止されませんが、「Edge」では、すでに「オブジェクト」として存在しませんので、ある意味「Chrome」と同じ操作方法となります。 それから、「コマンドプロンプト」や「Windows PowerShell」(マイクロソフト自身は、これからは「Winsows PowerShell」に移行したい)に変更したからと言って、上記の状況が変わるものでも何でもありません。 では、お勉強、がんばってください。
その他の回答 (1)
- potatorooms
- ベストアンサー率28% (3506/12498)
参考までに、 VBScript 廃止 で、検索されることをおすすめします。 Windows10では、この秋までの寿命です。 DOS以来のマイクロソフトのbasicの歴史が閉じることで話題になっています。