|
ja7awuさん という人に以下のように教えていただきました。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
IEにURLを指定する前にチェックした方が合理的と思います。
「お探しのページが見つかりませんでした」になるまで、ちょっと時間が
かかると思いますので、URLが変わるタイミングの処理も必要かと思います。
もっといい方法があるかも知れませんが、Webクエリを使う方法で如何でしょうか。
例えば、
・ "URL_CHK" という名前のシートを準備します。
・ そのシートに"URL_CHK"というQueryTableを作成し、非表示にします。
(1回だけWebQeryAdd()を実行すれば、作成されます。)
・ 下記 URL_ADD_CHK()を実行すれば3行目で指定したセルに入力されている
URLアドレスが、存在するかどうかを表示します。
Sub URL_ADD_CHK()
Dim url As String
url = Worksheets("Sheet1").Range("A1").Value
On Error Resume Next
With Worksheets("URL_CHK").QueryTables("URL_CHK")
.Connection = "URL;" & url
.WebSelectionType = xlAllTables
.WebFormatting = xlWebFormattingAll
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.Refresh BackgroundQuery:=False
End With
If Err.Number > 0 Then
MsgBox "URLアドレスは存在しません。"
Else
If Not Worksheets("URL_CHK").Cells. _
Find("お探しのページは見つかりませんでした", _
lookat:=xlPart) Is Nothing Then
MsgBox "お探しのページは見つかりませんでした。"
Else
MsgBox "見つかりました。" 'ここに見つかった時の処理を記述
End If
End If
End Sub
'-----------------
Sub WebQeryAdd() 'Webクエリを作成する(1回だけ実行)
Worksheets("URL_CHK").Activate
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://abcd.co.jp", Destination:=Range("A1"))
.Name = "URL_CHK"
nd With
End Sub
|
|