
No.1ベストアンサー
- 回答日時:
こんな感じでしょうかね。
たぶん。。。Sub Sample()
Dim i As Long
Dim bottom As Long
bottom = Range("A65536").End(xlUp).Row
For i = 1 To bottom
Range("B" & i) = GetWebStatus(Range("A" & i))
Next i
End Sub
Function GetWebStatus(URL As String) As String
Dim WinHttp As Object
Set WinHttp = CreateObject("WinHttp.WinHttpRequest.5.1")
On Error GoTo INVALID
WinHttp.Open "GET", URL, False
WinHttp.send
GetWebStatus = WinHttp.Status
Set WinHttp = Nothing
Exit Function
INVALID:
GetWebStatus = "Invalid URL"
Set WinHttp = Nothing
End Function
>kenpon24さん
ご回答有難うございます。
一番早く解決できたのでBAにさせていただきます。
まだ、レベルが低すぎてソースコードの細かい部分が
理解できていませんが、書いていただいたコードを基に
学習していきます。
有難うございました!
No.2
- 回答日時:
こんにちは
私はやったことがないですが、そういえば、Webサイトのあるなしを、Status で取得方法があるのだなって、言われて思い出しました。しかし、私が最初に考えたものは、#1さんとほぼイメージとしては同じなのですが、少し工夫をしてみました。
'-------------------------------------------
'Option Explicit
Dim objHTTP As Object 'モジュールの上部に置く
Sub CheckURL()
Dim ret As Variant
Dim c As Range
On Error GoTo ErrHandler
If objHTTP Is Nothing Then
Set objHTTP = CreateObject("WinHttp.WinHttpRequest.5.1")
End If
For Each c In Range("A1", Range("A2000").End(xlUp))
If StrConv(c.Value, vbLowerCase) Like "http://*" Then
c.Offset(, 1).Value = GetHttpHeader(c.Value)
End If
Next
ErrHandler:
If Err.Number > 0 Then
MsgBox Err.Number & " : " & Err.Description
End If
Set objHTTP = Nothing
End Sub
Function GetHttpHeader(ByVal strURL As String)
Dim ret As Variant
ret = Empty
On Error Resume Next
objHTTP.Open "GET", strURL, False
objHTTP.Send
ret = objHTTP.Status
On Error GoTo 0
If ret <> 0 Then
GetHttpHeader = ret
End If
End Function
>fuyuhikoさん
ご回答有難うございます。
まだ、レベルが低くてすんなりと違いを認識できていませんが
問題なく、解決できました!
有難うございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【マクロ】ボタンを押すごとに、A1セル、A2セル、A3セルに日付を入力 3 2023/01/25 00:12
- Excel(エクセル) エクセルVBAでセルに表示されているとおりの数値を取得したい(時間の計算結果) 1 2022/03/30 17:52
- Excel(エクセル) 並べ替え、ソートの構文がわからない。 お世話になります。VBA超初心者です。 エクセルでワークシート 2 2023/06/28 21:00
- Excel(エクセル) Excel VBA 指定セルに入力されているパスからシートをコピーして別のブックに転記するVBAのコ 2 2022/04/19 15:53
- Visual Basic(VBA) Excel VBA 教えてください。 VBA初心者です。 詳しい方がいましたら教えてください。 下記 3 2023/04/25 11:22
- Visual Basic(VBA) Excel VBA 最終行を取得しVlookup関数をコピーする方法をコーディングで教えてください。 3 2023/05/11 13:14
- Visual Basic(VBA) 複数csvを横に追加していくマクロについて 2 2023/04/25 09:19
- Visual Basic(VBA) Sheet1のA列にコードB列にメアド、Sheet2のB列にコード一覧とD列にメアド一覧があり、Sh 3 2022/10/19 11:57
- Excel(エクセル) ExcelVBA メモ帳を起動し名前を付けて指定フォルダに保存 2 2022/04/18 13:15
- Visual Basic(VBA) 昨日、質問した件『VBA にて、条件付き書式で背景色を設定しているセルの範囲で、背景色付きのセルをカ 4 2022/04/07 14:39
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Microsoft 365 Basic サブスク...
-
Accessのクエリの結果を、既存...
-
access2021 強制終了してしまう
-
access2021 VBA メソッドまたは...
-
Access Error3061 パラメータが...
-
Access VBA [リモートサーバー...
-
アクセスの更新クエリでカレン...
-
ACCESS VBA でのエラー解決の根...
-
AccessVBAで任意の複数リンクテ...
-
Microsoft365にAccessってあり...
-
Accessのクエリで、replace関数...
-
Excelを開く時と閉じる時に一度...
-
列が255以上のCSVファイルをAcc...
-
Accessのフォーム上のテキスト...
-
エクセルのVBAについて教えてく...
-
Access で半角スペースと全角ス...
-
MS.Access でサブフォーム付の...
-
Accessのレポートについて
-
access2019の起動が遅い
-
access2021 メッセージボックス...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Microsoft 365 Basic サブスク...
-
Accessのクエリで、replace関数...
-
access2021 強制終了してしまう
-
ACCESS VBA でのエラー解決の根...
-
Access VBA [リモートサーバー...
-
Accessのスプレッドシートエク...
-
Accessのレポートについて
-
access2021 VBA メソッドまたは...
-
Access Error3061 パラメータが...
-
access2019 チェックボックスと...
-
Accessのクエリの結果を、既存...
-
accessでlaccdbファイルが削除...
-
Access VBA を利用して、フォル...
-
accessデータを指定したExcel、...
-
Accessのリンクテーブルのパス...
-
列が255以上のCSVファイルをAcc...
-
Accessのクエリの印刷設定
-
Accessでレポートを印刷する時...
-
Accessフォームの配色テーマを...
-
Accessデータベースに含まれる...
おすすめ情報