こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

VBでのContinueが間違っているとき

http://oshiete1.goo.ne.jp/qa4564345.htmlではありがとうございました。
教わったことを参考にやってみたのですがうまくいきません。
Continueの部分がうまくいくPCといかないPCがあるのでどうしたらいいか分からなくなってしまいました・・・

Option Explicit

Dim objIE
Dim objShell
Dim objWindow
Dim WinExist
Dim strURL
Dim strURL2
Dim Flug

strURL = "http://www.yahoo.co.jp/"
strURL2 = "http://www.google.co.jp/"
WinExist = False

Set objShell = CreateObject("Shell.Application")
For Each objWindow In objShell.Windows
If TypeName(objWindow.Document) <> "HTMLDocument" Then
Continue
End If

WinExist = True
Set objIE = objWindow

If objIE.LocationURL = strURL Then
Flug = True
Exit For
End If
Next

If Flug = True Then
msgbox "ヤフー存在"
Else
msgbox "別の処理を行なう"
If WinExist = False Then 'IEが無い場合 起動する
Set objIE = WScript.CreateObject("InternetExplorer.Application")
objIE.Navigate strURL2
objIE.Visible = True
Set objIE = Nothing
End If
End If

投稿日時 - 2008-12-18 23:52:10

QNo.4566658

すぐに回答ほしいです

質問者が選んだベストアンサー

いや、ですから、Continue という構文は VBScript にはないんですってば(^^;

http://oshiete1.goo.ne.jp/qa4564345.html

でNo.1さんが回答されてますよね。それ以外にも

http://oshiete1.goo.ne.jp/qa4561965.html

でも同じ回答を得られていますよね。意味が判りません(^^;

For ... To ...
Do '← Exit Do を使うためのダミー Loop
 If ... Then
  Exit Do '←これが Continue の代わりになる
 End If
Loop Until True '← Exit Do を使うためのダミー Loop
Next

このように For ~ Next の内側にダミーの Do ~ Loop を設けて、そこから抜けるようにすれば、同等処理が可能です。
(上記コードは全角空白でインデントしてます。)

投稿日時 - 2008-12-19 10:40:09

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問