コードを記述した画面で、F5、F8、右△ボタンでは実行ができますが、マクロを登録したボタンで実行するとエラーになります。(ショートカットキーも割り当てましたが同様)
エラー内容は、
実行時エラー'1004'
RangeクラスのAutoFilterメソッドが失敗しました。
です。
超初心者です。
無駄の多い記述でとてもお恥ずかしいのですが以下になります。
ご教示いただけると助かります。
よろしくお願いいたします。
*************************************
Sub オートフィルターで絞り込んで別シートに転記()
'これは動作確認済み
Dim rg
Set rg = Range("A1")
Dim cat
cat = 1
Sheets("作業②").Select
Range("A1").Select
rg.AutoFilter field:=10, Criteria1:=cat ’・・・・・←ここでつまづく
rg.CurrentRegion.Copy Sheets(6).Range("A1")
Sheets(6).Select
Cells.Select
Cells.EntireColumn.AutoFit
Columns("J:K").Select
Selection.Delete Shift:=xlToLeft
cat = cat + 1
’・・・・続く
No.1ベストアンサー
- 回答日時:
エラーが発生する原因ですが、「ボタンで実行するから」ではなく、「作業②シート以外のシートをアクティブした状態で実行するから」ではないでしょうか?
Selectを多用する初心者には、よく見られる症状です。
>Set rg = Range("A1")
上記の場合、変数rg は、その時点でアクティブなシートのA1セルを指してしまいます。
とりあえず、下記のように書き換えれば、エラーは回避できると思いますが・・・(あくまで「とりあえず」です)
Set rg = Sheets("作業②").Range("A1")
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【VBA】ボタンに登録したマクロがエラーになる 4 2022/07/25 17:47
- Excel(エクセル) excelVBAについて。 8 2022/12/11 13:47
- Visual Basic(VBA) データのある範囲を選択するVBAについて 2 2022/09/03 00:20
- Excel(エクセル) ExcelVBAについて。 2 2022/12/10 20:08
- Visual Basic(VBA) excelVBAについて。 1 2022/11/30 06:16
- Visual Basic(VBA) Sheet2の日付をキーにオートフィルターで2023年1月のデータを抽出し、Sheet3へ書き出すた 2 2023/03/06 23:57
- Excel(エクセル) エクセルのVBAにショートカットキーの割り当て 3 2022/07/13 14:19
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- Visual Basic(VBA) excelVBAについて。 4 2022/11/21 16:15
- Excel(エクセル) ②Excel 簡単にシートコピーしたら前日の残高と日付を変更させたい→マクロの記録でエラーが出ます 8 2022/07/16 20:40
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
マクロボタンを作ってのマクロ実行ができない
Excel(エクセル)
-
コマンドボタンでマクロを起動するとエラーになる
Access(アクセス)
-
Excelでボタン(フォームコントロール)にマクロ登録するとエラーになる
Microsoft ASP
-
-
4
【VBA】ボタンに登録したマクロがエラーになる
Visual Basic(VBA)
-
5
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
6
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
7
エクセルでマクロ登録の不具合解消
その他(プログラミング・Web制作)
-
8
【VBA】ボタンで実行するとうまく作動しません。
Excel(エクセル)
-
9
VBA シートのボタン名を変更したい
Visual Basic(VBA)
-
10
Rangeメソッドは失敗しました。globalオブジェクトについて
Excel(エクセル)
-
11
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
12
別シートのマクロを実行する方法
Excel(エクセル)
-
13
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
14
【ExcelVBA】マクロの入ったシートをコピーしても新しいシート内でマクロを動作させるには?
Excel(エクセル)
-
15
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
16
VBAで、セル(Range)のオブジェクトが取得できない
Excel(エクセル)
-
17
EXCELのボタンによるマクロの登録名にファイル名が入ってしまう
PowerPoint(パワーポイント)
-
18
エクセル マクロ名にブック名が付いた場合の修正方法
Excel(エクセル)
-
19
VBA シートをコピーする際に Copyメソッドは失敗しましたのエラーが出てしまいます
Visual Basic(VBA)
-
20
特定の文字を含むシートだけマクロ処理をしたい
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
実行時エラー 438になった時の...
-
エクセルエラー13型が一致しま...
-
実行時エラー -'-2147417848
-
「コンパイルエラー:プロシー...
-
VBAがブレークモードになっ...
-
VB6+SQL サーバー 2000 で 実行...
-
なぜこんな初歩的なVBAのIf文で...
-
ADODB.Streamを使用してUTF-8を...
-
実行時エラー3001「引数が間違...
-
[Delphi] データセットは閉じて...
-
VBで構造体を使うさ際の64k...
-
マクロについて教えてください...
-
ExcelVBA Range クラスの Page...
-
Excelで下記のようにマクロを作...
-
OLEDB.NETで接続できない
-
Access2000での未定義関数repla...
-
ACCESS フォームサイズ指定で...
-
職場から目的地までの距離集計
-
エラーでつまってます・・・お...
-
DataGridView からの値取得に関...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
実行時エラー 438になった時の...
-
エクセルエラー13型が一致しま...
-
【Excel VBA】マクロをボタンに...
-
なぜこんな初歩的なVBAのIf文で...
-
マクロについて教えてください...
-
実行時エラー3001「引数が間違...
-
VBAがブレークモードになっ...
-
ExcelVBA Range クラスの Page...
-
VBSで変数の宣言はできないので...
-
VBS実行時エラー オブジェクト...
-
OLEDB.NETで接続できない
-
プロシージャ名の取得
-
EXCEL VBAマクロ中断でデバッグ...
-
ADODB.Streamを使用してUTF-8を...
-
VBAでのエラー
-
実行時エラー48発生時のDLL特定...
-
Outlook.ApplicationをCreateOb...
-
VB6+SQL サーバー 2000 で 実行...
-
実行時エラー -'-2147417848
-
「コンパイルエラー:プロシー...
おすすめ情報