
コードを記述した画面で、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で質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
【VBA】ボタンで実行するとうまく作動しません。
Excel(エクセル)
-
【VBA】ボタンに登録したマクロがエラーになる
Visual Basic(VBA)
-
マクロボタンを作ってのマクロ実行ができない
Excel(エクセル)
-
-
4
EXCELのボタンによるマクロの登録名にファイル名が入ってしまう
PowerPoint(パワーポイント)
-
5
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
6
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
7
コマンドボタンでマクロを起動するとエラーになる
Access(アクセス)
-
8
「Columns(A:C")」の列文字を数字にして表記したい"
Excel(エクセル)
-
9
エクセル マクロ名にブック名が付いた場合の修正方法
Excel(エクセル)
-
10
Excelマクロで、稼働中のマクロを確認する方法
その他(Microsoft Office)
-
11
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
12
【ExcelVBA】マクロの入ったシートをコピーしても新しいシート内でマクロを動作させるには?
Excel(エクセル)
-
13
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
14
VBAでEmpty値って何ですか?
Excel(エクセル)
-
15
エクセルVBA/イベント発生でコピペ不能はなぜ?
Excel(エクセル)
-
16
Excelのセルにユーザー名を表示する方法
Excel(エクセル)
-
17
VBA シートのボタン名を変更したい
Visual Basic(VBA)
-
18
EXCEL VBAマクロ中断でデバッグ(コード閲覧)できないようにしたい
Visual Basic(VBA)
-
19
エクセルVBA、ステップモードと結果が異なる
その他(Microsoft Office)
-
20
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
実行時エラー 438になった時の...
-
実行時エラー3001「引数が間違...
-
VBAがブレークモードになっ...
-
実行時エラー48発生時のDLL特定...
-
VBAで、定数式が必要ですのエラ...
-
EXCEL VBAマクロ中断でデバッグ...
-
ExcelVBA Range クラスの Page...
-
VBAでのエラー
-
なぜこんな初歩的なVBAのIf文で...
-
VB6+SQL サーバー 2000 で 実行...
-
VBAでピボットテーブルの作成(...
-
【VBA-AC2000】カレントプロシ...
-
トランスポートレベルのエラー
-
実行時エラー -'-2147417848
-
エクセルVBAで以下のようなコー...
-
マクロについて教えてください...
-
Application.ActiveInspectorで...
-
マクロでオートシェイプ内の文...
-
EXCEL/VBAで、自分のPCだけエラ...
-
OLEDB.NETで接続できない
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
実行時エラー 438になった時の...
-
VBAがブレークモードになっ...
-
【マクロ】エラー【#DIV/0!】が...
-
なぜこんな初歩的なVBAのIf文で...
-
VBAでのエラー
-
実行時エラー -'-2147417848
-
実行時エラー48発生時のDLL特定...
-
マクロについて教えてください...
-
ExcelVBA Range クラスの Page...
-
EXCEL VBAマクロ中断でデバッグ...
-
実行時エラー3001「引数が間違...
-
EXCEL/VBAで、自分のPCだけエラ...
-
VB6+SQL サーバー 2000 で 実行...
-
VBAのエラー発生場所をメッセー...
-
ADODB.Streamを使用してUTF-8を...
-
【Excel VBA】マクロをボタンに...
-
OLEDB.NETで接続できない
-
なぜエラーになるのでしょうか...
-
INSERT INTOステートメント構文...
-
Outlook.ApplicationをCreateOb...
おすすめ情報