• 締切済み

vbsでホームページ表示について

vbsファイル ・Dim objIE ・Set objIE = CreateObject("InternetExplorer.Application") ・objIE.Visible = True ・objIE.Navigate2 "http://***.***1/" ・objIE.Navigate2 "http://***.***2/", &H1000 ・objIE.Navigate2 "http://***.***3/", &H1000 ・Set objIE = Nothing この中で「, &H1000」を a=", &H1000" objIE.Navigate2 "http://***.***3/" & a とすると正常に表示できません。 変数??に代入するにはどうすればいいのでしょうか。 アドバイス、よろしくお願いします。

noname#184243
noname#184243

みんなの回答

  • utakataXEX
  • ベストアンサー率69% (711/1018)
回答No.4

#3 さん フォローいただきありがとうございます。 脊髄で回答した後、&H がURLのクエリストリングではなくて、16進表記である事に気がついたのですが、再精査して回答する時間がなく、とりあえず詫び状だけ投稿した次第です。 お恥ずかしい。 そうか、中身は単なる4096だから単純にクォート無しで連結でOKですね。

回答No.3

No1さん。そんなに間違いではないと思いますよ。 http://search.yahoo.co.jp/search?b=1&n=10&ei=UTF-8&fr=ie8sc&p=Const+%26h1000 などリストされているサンプルを見ればわかります。 本来 Number でなければいけないのに、 ”” でくぉーとしてしまったため String になっていますよね。 なので、HTTPから始まる、URLに文字列を足して、URLとしてパラメーターに渡されてしまっている。 単にNumberとして a=, &H1000 とすると、構文エラーになる。当然ですよね。そこで質問者はクォートしたのでしょうが、それがあだとなった。そうNo1さんが指摘したとおり、”,” が邪魔したわけだ。では a=&H1000 として、「, a」とすればいい。そもそもセパレーターである、”,”を変数に入れる場合、 違うアプローチが必要。その事を、質問者が意図して隠しているのかもしれない。 通常、 Join(Array, セパレーター) の書式で、変数をジョイントする方法を使えば、任意の値をパラメーターに指定できるし、ユーザー定義関数、Classにしてもいい。 その辺の柔軟性が必要と思いますよ。

  • utakataXEX
  • ベストアンサー率69% (711/1018)
回答No.2

♯1です。 すいません。 質問の意味を取り違えました。 前の回答は間違いです。

  • utakataXEX
  • ベストアンサー率69% (711/1018)
回答No.1

>この中で「, &H1000」を a=", &H1000" カンマはVB(VBS、VBA)の文途中の改行の構文です。 URLではありません。 a="&H1000" としてください。

関連するQ&A

  • インターネットで調べてVBSで下のようなものを作ってみました。

    インターネットで調べてVBSで下のようなものを作ってみました。 やりたいことは、IEを起動して複数のサイトを複数のタブで表示 したいのですが、サイトの種類分IEも起動してしまいます。 考えているようなことはできないのでしょうか。 ========ここから下です======== Option Explicit Dim objIE Dim objShell 'Shell.Application Set objShell = CreateObject("Shell.Application") Set objIE = CreateObject("InternetExplorer.Application") objIE.Visible = True 'IEウィンドウを表示 objIE.Navigate2 "http://www.okwave.jp/" Set objIE = CreateObject("InternetExplorer.Application") objIE.Visible = True 'IEウィンドウを表示 objIE.Navigate2 "http://www.google.co.jp/" Set objIE = CreateObject("InternetExplorer.Application") objIE.Visible = True 'IEウィンドウを表示 objIE.Navigate2 "http://www.yahoo.co.jp/" ======================= よろしくお願いいたします。

  • 複数のタブを開きたい IE

    IE9を使っています。 画像のようにタブを二つ開くにはどうすればいいでしょうか? Sub test() Dim objIE As InternetExplorer Set objIE = CreateObject("InternetExplorer.application") objIE.Visible = True objIE.Navigate "http://www.yahoo.co.jp/" Set objIE = Nothing End Sub だと一つのタブしか開けません。 Sub test() Dim objIE As InternetExplorer Set objIE = CreateObject("InternetExplorer.application") objIE.Visible = True objIE.Navigate "http://www.yahoo.co.jp/" objIE.Navigate "http://www.yahoo.co.jp/" Set objIE = Nothing End Sub にしても Sub test() Dim objIE As InternetExplorer Set objIE = CreateObject("InternetExplorer.application") objIE.Visible = True objIE.Navigate "http://www.yahoo.co.jp/" objIE.Navigate2 "http://www.yahoo.co.jp/" Set objIE = Nothing End Sub にしても1つのタブしか開けないです。 ご回答よろしくお願いします。

  • VBSのNavigateコマンドについて

    VBSのNavigate の URL指定の中に inputboxで 変数を代入したいのですがうまくいきません お分かりの方 教えていただければ幸いです。 Dim Input Input = InputBox("~~~~") Set objIE = WScript.CreateObject("InternetExplorer.Application") objIE.Navigate "https://xxx Input xx" ← この中のURLに挿入したい。 末筆ですみませんがよろしくお願いします。

  • VBAでIE操作をするサンプル

    VBAでIE操作をするサンプルをネットでいくつか見ているのですが Sub Sample1() Dim objShell As Object Dim objIE As New InternetExplorer Set objShell = CreateObject("Shell.Application") objIE.Visible = True objIE.Navigate "http://www.yahoo.co.jp/" Set objIE = Nothing Set objShell = Nothing End Sub Sub Sample2() Dim objIE As InternetExplorer Set objIE = CreateObject("InternetExplorer.application") objIE.Visible = True objIE.Navigate "http://www.yahoo.co.jp/" Set objIE = Nothing End Sub ではどちらを使った方がいいのでしょうか? 圧倒的にSample2の方がネットでは多いのですが Sample1のやり方もあることを知りました。 Sample1の方法でブラウザを開くメリットはあるのでしょうか?

  • DoEvents

    VBSでDoEventsは使えないのでしょうか? *************************** Dim ObjIE dim i Set ObjIE = CreateObject("InternetExplorer.Application") ObjIE.Navigate "http://oshiete.goo.ne.jp/" ObjIE.Visible = True Do While ObjIE.Busy = True DoEvents Loop Do While ObjIE.Document.ReadyState <> "complete" DoEvents Loop Set ObjIE = Nothing *************************** だと、エラーになりました。 Wscript.sleep 3000 ならエラーにならずにコードは動きました。 VBAならDoEventsは使えるのに VBSで使えない理由を教えてください。

  • 現在表示されているURLを取得したいのですが

    Sub test1() Dim objIE As InternetExplorer Set objIE = CreateObject("InternetExplorer.Application") objIE.Visible = True objIE.Navigate "http://www.goo.ne.jp/" Do While objIE.Busy = True Or objIE.ReadyState <> 4 DoEvents Loop Debug.Print objIE.Navigate Set objIE = Nothing End Sub //////////////////////////////////////////////// をやろうとすると、 Debug.Print objIE.Navigate の部分で、「引数は省略できません。」とエラーになります。 どう修正すればいいか教えてください。 ("http://www.goo.ne.jp/"はダミーです)

  • objIE  2個目のサイズが適用されません。

    VBAです。 Dim objShell As Object Dim objIE As New InternetExplorer Const READYSTATE_COMPLETE As Long = 4 Sub test1() Set objShell = CreateObject("Shell.Application") objIE.Visible = True objIE.Top = 0 objIE.Left = 0 objIE.Width = 100 objIE.Height = 100 objIE.navigate "http://www.goo.ne.jp/" objIE.Navigate2 "http://www.goo.ne.jp/", 2048 Set objIE = Nothing Set objShell = Nothing Set objShell = CreateObject("Shell.Application") objIE.Visible = True objIE.navigate "http://www.goo.ne.jp/" objIE.Navigate2 "http://www.goo.ne.jp/", 2048 'できない objIE.Top = 20 objIE.Left = 20 objIE.Width = 100 objIE.Height = 100 Set objIE = Nothing Set objShell = Nothing End Sub のように二つのブラウザを立ち上げて サイズを変えたいのですが 2個目のサイズが適用されません。 エラーにもなりません。 なぜでしょうか?

  • NavigateとNavigate2の違いは?

    Sub Sample_Navigate() Dim objIE As Object Set objIE = CreateObject("InternetExplorer.application") objIE.Visible = True objIE.Navigate "http://www.yahoo.co.jp/" Set objIE = Nothing End Sub Sub Sample_Navigate2() Dim objIE As Object Set objIE = CreateObject("InternetExplorer.application") objIE.Visible = True objIE.Navigate2 "http://www.yahoo.co.jp/" Set objIE = Nothing End Sub 上記二つのサンプルをテストしてみましたが違いが判りません。 Navigate2のヘルプを見ようとしても キーワードが見つかりません。が見つかりませんになってしまいます。 この二つのメソッドの違いを教えていただけますか? オブジェクトブラウザの情報だと Navigateは Sub Navigate(URL As String, [Flags], [TargetFrameName], [PostData], [Headers]) SHDocVw.InternetExplorer のメンバー Navigates to a URL or file. Navigate2は Sub Navigate2(URL, [Flags], [TargetFrameName], [PostData], [Headers]) SHDocVw.InternetExplorer のメンバー Navigates to a URL or file or pidl. と書いてありました。 引数の数は一緒でした。

  • ie 64bit 32bit どちらが開いてる?

    Sub Sample() Dim objIE As InternetExplorer Set ObjIE = CreateObject("InternetExplorer.application") ObjIE.Visible = True ObjIE.Navigate "http://www.yahoo.co.jp/" Set ObjIE = Nothing End Sub で、vbaからieを開いた場合、64bit 32bitのどちらで開かれるのでしょうか? 私の環境はwin7、IE9です。

  • IEではなくファイアフォックスを指定することは

    VBAでブラウザを開く場合、 IEではなくファイアフォックスを指定することは可能ですか? 既定のブラウザはIEにしています。 Sub test1() Dim objIE As Object Set objIE = CreateObject("InternetExplorer.Application") objIE.Navigate "http://www.ocn.ne.jp/" objIE.Visible = True Set objIE = Nothing End Sub の Set objIE = CreateObject("InternetExplorer.Application") の部分を Set objIE = CreateObject("firefox.exe") に変えてみたら、 【ActiveX コンポーネントはオブジェクトを作成できません。(Error 429)】 になりました。

専門家に質問してみよう