
下記のマクロでは、A列にあるURLのソースに、
指定した語句が含まれているか調べるものです。
このマクロを動かしていると、頻繁に、
実行時エラー3001「引数が間違った型、許容範囲外、または競合しています。」
というポップが出てきます。
そのため、思うようにマクロ作業が進みません。
このエラーが出る原因は何があるでしょうか?
エラーが出ないようにするためには、どのように記述した方がいいでしょうか?
それか、このエラーのポップを避けて、
その次のURLから動かしていくという風にできたりしますでしょうか?
よろしくお願いいたします。
Sub main()
'!!!! [Microsoft XML v6.0] に参照設定
Dim xHttp As IServerXMLHTTPRequest
Dim myErr_Number As Long, myErr_Description As String
Set xHttp = CreateObject("MSXML2.ServerXMLHTTP")
Dim aCell As Range
R = 1
For Each aCell In Selection.Columns(1).Cells
Application.Goto aCell
DoEvents
sUrl = aCell.Value
If sUrl <> "" Then
xHttp.Open "GET", sUrl, True
xHttp.setOption SXH_OPTION_IGNORE_SERVER_SSL_CERT_ERROR_FLAGS, _
SXH_SERVER_CERT_IGNORE_ALL_SERVER_ERRORS
On Error Resume Next
xHttp.send
If xHttp.readyState <> 4 Then
xHttp.waitForResponse 5
End If
If xHttp.readyState <> 4 Then Err.Raise 1004, ,
myErr_Number = Err.Number
myErr_Description = Err.Description
On Error GoTo 0
If myErr_Number = 0 Then
sHtml = xHttp.responseText
nRtn = InStr(sHtml, "A")
If nRtn = 0 Then
aCell.Offset(, 1).Value = "--"
Else
aCell.Offset(, 1).Value = "○"
End If
Else
aCell.Offset(, 1).Value = myErr_Description
DoEvents
End If
Next
Set xHttp = Nothing
End Sub
No.2ベストアンサー
- 回答日時:
・ご提示のプログラムは 少なくとも End If が一つ足りないので動作しません。
エラーが発生する正確なプログラムをコピペしてください。
・実行時エラーのときデバッグボタンをクリックすると、プログラムのどの行を指し示しますか?
・特定のURLでエラーが発生する等はありますか?
・ご利用のOSおよびExcelのバージョンを提示してください。
回答ありがとうございます!
コピペするマクロを間違えていました。すみません。
コメントでは、文字数エラーになるため、
改めて質問しました。
https://oshiete.goo.ne.jp/qa/11208027.html
> ・実行時エラーのときデバッグボタンをクリックすると、プログラムのどの行を指し示しますか?
in_strm.Charset = sCharset
の部分が黄色マーカーになっています。
> ・特定のURLでエラーが発生する等はありますか?
エラーが出たURLの一部は、これらです。
https://www.apo-job.jp/
https://www.aniel.jp/
https://www.amo-co.jp/
> ・ご利用のOSおよびExcelのバージョンを提示してください。
Excel2016です。
No.1
- 回答日時:
>実行時エラー3001「引数が間違った型、許容範囲外、または競合しています」
間違った型の引数または許容範囲外の引数を使用しているか、ほかの引数と競合しています。このエラーは、SQL SELECT ステートメント中のタイプミスが原因でよく発生します。SELECT ステートメントに指定されたフィールドまたはテーブルがデータ ストアに存在しない場合も発生することがあります。
例:フィールド名やテーブル名のスペルミスでこのエラーが発生。
https://answers.microsoft.com/ja-jp/msoffice/for …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【VBAエラー】Nextに対するForがありません 対策について 5 2022/11/21 21:26
- Visual Basic(VBA) Excelで下記のようにマクロを作ったところ、一回目は実行できたのですが、二回目以降「実行時エラー1 1 2022/03/25 08:08
- Visual Basic(VBA) excel vbaでvlooupの変数がわかりません。 7 2022/05/30 09:35
- Visual Basic(VBA) オブジェクトが見つかりません 1 2023/06/24 19:43
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/06 17:46
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたいの続き 5 2023/01/24 00:16
- Excel(エクセル) なぜExit Subがあるのかわかりません 4 2023/02/19 12:34
- Visual Basic(VBA) エラーコード1004 6 2022/06/09 14:12
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
このQ&Aを見た人はこんなQ&Aも見ています
-
「実行時エラー3001」のポップが出てしまう
Visual Basic(VBA)
-
ADODB.Streamを使用してUTF-8を出力
Visual Basic(VBA)
-
ExcelでAccessのテーブルにADOでレコード追加時にエラーが発生
Excel(エクセル)
-
-
4
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
5
ADOのCursorLocationプロパティ
Visual Basic(VBA)
-
6
アクセスVBAのMe!と[ ]
Access(アクセス)
-
7
ACCESS ADOでupdateが効かない
その他(データベース)
-
8
Access サブフォームでの選択行の取得
その他(データベース)
-
9
実行時エラー 3265「要求された名前、または序数
Visual Basic(VBA)
-
10
Access VBAから使用したExcelプロセスを閉じる方法について
Visual Basic(VBA)
-
11
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
12
【AccessVBA】レコードセットOpen時の引数について
Access(アクセス)
-
13
Accessのコンボボックスでリストが選択できない
Word(ワード)
-
14
Accessで別テーブルの値をフォームに表示したい
その他(データベース)
-
15
ADO VBA 実行時エラー3021
Visual Basic(VBA)
-
16
アクセスのfilter、複数条件の記述方法を教えてください。
Access(アクセス)
-
17
ACCESSでVBAから選択クエリの抽出条件を指定したい
Access(アクセス)
-
18
AccessのDAOでフィールド名を配列に格納して・・・
Visual Basic(VBA)
-
19
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
-
20
Accessで、定型入力を使って年と月のデータだけ入力したい
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
実行時エラー 438になった時の...
-
なぜこんな初歩的なVBAのIf文で...
-
実行時エラー48発生時のDLL特定...
-
Invalid procedure call or arg...
-
実行時エラー3001「引数が間違...
-
vbaのvlookup関数エラー原因を...
-
職場から目的地までの距離集計
-
【VBA】ボタンに登録したマクロ...
-
なぜエラーになるのでしょうか...
-
【VBA】実行中に「型が一致しま...
-
EXCEL/VBAで、自分のPCだけエラ...
-
VBAがブレークモードになっ...
-
ExcelVBAで、ユーザー定義型は...
-
【Excel VBA】マクロをボタンに...
-
ExcelVBA Range クラスの Page...
-
Excel TextBoxクラスのCharacte...
-
VBAで、定数式が必要ですのエラ...
-
UWSCのビジー待ちで60秒経った...
-
EXCEL VBAマクロ中断でデバッグ...
-
Outlook.ApplicationをCreateOb...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
実行時エラー 438になった時の...
-
なぜこんな初歩的なVBAのIf文で...
-
VBAがブレークモードになっ...
-
実行時エラー -'-2147417848
-
ExcelVBA Range クラスの Page...
-
マクロについて教えてください...
-
VBAでのエラー
-
【Excel VBA】マクロをボタンに...
-
実行時エラー48発生時のDLL特定...
-
EXCEL VBAマクロ中断でデバッグ...
-
なぜエラーになるのでしょうか...
-
実行時エラー3001「引数が間違...
-
OLEDB.NETで接続できない
-
INSERT INTOステートメント構文...
-
VBAのエラー発生場所をメッセー...
-
VB6+SQL サーバー 2000 で 実行...
-
Outlook.ApplicationをCreateOb...
-
ADODB.Streamを使用してUTF-8を...
-
カーソルオープンでエラー(ORA...
-
Invalid procedure call or arg...
おすすめ情報