お世話になります。
開いているBook1からデータを抽出し、Book2へコピーしたいのですが、AdvancedFilterでエラーが出てしまいます。
何がまずいのかよくわかりません。
お分かりになる方、ご教授願います。
Private Sub Worksheet_Activate()
Set myTbl = Workbooks("Book1.xls").Worksheets("Sheet1").Range("myTbl")
Set myQry = Workbooks("Book2.xls").Worksheets("抽出条件").Range("A_抽出条件")
Set sakiRng = Workbooks("Book2.xls").Worksheets("A").Range("A3:AR3")
myTbl.AdvancedFilter xlFilterCopy, myQry, sakiRng ←ここでエラーになります。
Dim rw As Long '入力最終行
rw = Range("I65536").End(xlUp).Row
With Application
Range("I" & rw + 1) = .Sum(Range("I1:I" & rw))
Range("AO" & rw + 1) = .SumIf(Range("AP1:AP" & rw), "済", Range("AO1:AO" & rw))
Range("AQ" & rw + 1) = .Sum(Range("AQ1:AQ" & rw))
End With
End Sub
No.5ベストアンサー
- 回答日時:
>物分りが悪くて申し訳ありません。
こちらこそ、わかりづらい回答で申し訳ありません。
>インデックスが有効範囲にありません
は、ブック名や、シート名が間違っていると出ます。
#3は私の方で、使用しているデータ用のマクロですので、
#3を貼り付けずに、実際にcat_tomatoさんのデータで新規にマクロを作ってください。
1.Book2のAシート上で、「ツール」→「マクロ」→「新しいマクロの記録」
マクロ名はそのままでよいので、OKボタンを押す。
2.「データ」→「フィルタ」→「フィルタオプションの設定」
抽出先 :指定した範囲
リスト範囲 :[Book1.xls]Sheet1!$A$1:$F$16 ←自分のデータ
検索条件範囲:抽出条件!$A$1:$A$2 ←自分のデータ
抽出範囲 :$A$3 ←自分のデータ
3.マクロ記録終了
この方法で、記録中にエラーがでる時には、データがおかしい可能性があります。
問題なく、記録できれば、#3のマクロができます。
ここまでできたら、1つづつチェックしていきます。
ここから先の方法がわからない時には、補足してください。
(ここまでの登録ができないと、データ自体を教えて頂かないとチェックのしようがありません)
要領を得ない回答で申し訳ありませんが、正常に動作するまでは、
力になりたいと思いますので、頑張ってください。
お返事ありがとうございます。
どうやらExcelでは抽出データを作業中以外の他のブックに貼り付けることはできないらしいです。
何度も回答、ありがとうございます。
こちらのミスで付き合って頂いて、感謝しております。
また何かありましたらよろしくお願いいたします。
No.4
- 回答日時:
先程の続きです。
#3の方法でうまくいけば、
そこから
Workbooks("Book1.xls").Sheets("Sheet1").Range("A1:F16").AdvancedFilter
→
Workbooks("Book1.xls").Sheets("Sheet1").Range("Mytbl").AdvancedFilter
に変更して実行
さらにうまくいけば、
Sheets("抽出条件").Range("A1:A2")
→
Workbooks("Book2.xls").Sheets("抽出条件").Range("A_抽出条件")
に変更して実行
というように1つづつチェックしてみてください。
具体的にどこが悪いという指摘ができなくて申し訳ありません。
この回答への補足
回答ありがとうございます。
物分りが悪くて申し訳ありません。
No.3の文を変えて貼り付けてみました。
それで実行すると「インデックスが有効範囲にありません」のエラーに変わりました。
これはどのインデックスのことを言っているのでしょう?
重ね重ねすみません。
No.3
- 回答日時:
たびたびの見当違いの回答で申し訳ありません。
が、私の方で実行した限り正常に動いていますので、
どこかの設定ミスのように思うのですが・・・
新しいマクロの記録で、もう一度マクロを作ってみてください。
(mytbl,A_抽出条件を用いないで実際のセルで)
Sub Macro1()
Workbooks("Book1.xls").Sheets("Sheet1").Range("A1:F16").AdvancedFilter Action _
:=xlFilterCopy, CriteriaRange:=Sheets("抽出条件").Range("A1:A2"), CopyToRange _
:=Range("A3"), Unique:=False
End Sub
のようなマクロができると思います。
とりあえず、そのマクロを Private Sub Worksheet_Activate() に移して、
正常に動くか確認してください。
(現在のマクロは名前を変えておいて、新規に作ったマクロのみ記述)
そこに行って、実際に動かしてみれないのがすごく、もどかしいです。
No.2
- 回答日時:
>「アプリケーション定義またはオブジェクト定義エラー」
myTblやA_抽出条件の指定がおかしいとでます。(他にもありますが)
Set myTbl = Workbooks("Book1.xls").Worksheets("Sheet1").Range("myTbl")
Set myQry = Workbooks("Book2.xls").Worksheets("抽出条件").Range("A_抽出条件")
を実際のセルを入れてテストしてみてください。
Set myTbl = Workbooks("Book1.xls").Worksheets("Sheet1").Range("A1:B2")
など
それでうまくいけば、myTbl,A_抽出条件の定義(名前)がおかしいかもしれません。
まだ、うまくいかないようなら、再度補足してください。
この回答への補足
回答ありがとうございます。
おっしゃるとおり、セルを実際のものにしてみました。
が、エラーが直りません。
何度も申し訳ありませんが、よろしくお願いいたします。
No.1
- 回答日時:
エラーは、「抽出した範囲にはフィールド名がないか、または不正なフィールド名です」でしょうか?
Set sakiRng = Workbooks("Book2.xls").Worksheets("A").Range("A3")
で試してみてください。
違うエラーでしたら、再度補足して下さい。
前回質問の方と違うのでしょうか?
この回答への補足
さっそくの回答ありがとうございます。
エラーMSGは「アプリケーション定義またはオブジェクト定義エラー」です。
教えていただいた文にしてみましたが、同じエラーが出ました。
どうぞよろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 配列の勉強をしています。使用する変数の意味、検索条件の書き方が難しいです。 2 2022/09/15 14:06
- Excel(エクセル) なぜExit Subがあるのかわかりません 4 2023/02/19 12:34
- Visual Basic(VBA) Sheet3から2つの条件でオートフィルターで抽出した個数をSheet2へ入力するマクロで、一つ目の 4 2023/01/12 23:40
- Visual Basic(VBA) Sheet1をフィルターで「りんご」を抽出し、Sheet2へ地域を貼り付ける下記マクロを変更して S 2 2022/12/11 03:01
- Visual Basic(VBA) 正規表現を用いての並び替え 7 2022/04/04 09:27
- Visual Basic(VBA) 前回ご教授いただいたコードに覚えたてのループ処理で品名りんごAから順に20回for nextでループ 7 2023/01/13 22:01
- Visual Basic(VBA) excel vbaでvlooupの変数がわかりません。 7 2022/05/30 09:35
- Visual Basic(VBA) VBAが止まります。 1 2022/09/02 14:51
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
パワポで曲がった両矢印の簡単...
-
パワーポイントの表
-
音声マークを一括非表示にしたい。
-
パワーポイント2019 図の透...
-
パワーポイント「スライドショ...
-
PowerPointで、作成されたファ...
-
エクセル・パワーポイントなど...
-
PowerPointで保存のところに変...
-
you tubeにパワポで作った動画...
-
PowerPointVBAでスライドマスタ...
-
USBとは?至急です! 大学でプ...
-
パワーポイント2016でデザイン...
-
PowerPointのアニメーションで...
-
卒論発表があります。5分ほどの...
-
PowerPointについて質問です。 ...
-
officeのプロダクトキーを紛失
-
パワーポイントでの印刷時の枠...
-
パソコン初心者です。 Windows...
-
PowerPointでスライドマスタの...
-
パワーポイントで、全てのスラ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
パワポで曲がった両矢印の簡単...
-
音声マークを一括非表示にしたい。
-
パワーポイント「スライドショ...
-
パワーポイントの表
-
PowerPointでスライドマスタの...
-
エクセル・パワーポイントなど...
-
PowerPointVBAでスライドマスタ...
-
PowerPointのアニメーションで...
-
PowerPointで、作成されたファ...
-
エクセルでA3の大きさに資料...
-
ExcelのグラフをPowerPointに貼...
-
パワーポイントで資料を作る時 ...
-
パワーポイントのアニメーショ...
-
【パワーポイントのフォントが...
-
プレゼン時のポインター
-
PowerPoint2010、2021のスライ...
-
パワーポイントで、全てのスラ...
-
パワーポイントで説明しながら...
-
PowerPointのオプションの設定...
-
PowerPointの背景について
おすすめ情報