ここから本文です

AdvancedFilterに、ついて質問します。 取引先別に、新しいBookに、抽出したいと...

es2********さん

2011/10/2114:08:21

AdvancedFilterに、ついて質問します。
取引先別に、新しいBookに、抽出したいと思っていますが、
上手くいかずてこづっています。

"Sheet1"に、
A1-No
B1-売上日
C1-取引先
D1-分類
E1-商品名
F1-単価
G1-数量
H1-合計 と、項目があり、下にデータが入っています。

又、 J1-取引先
J2:J5-取引先名

J8-取引先 (条件範囲)
J9-取引先名と、入力してあります。

コードは、

Din Mybook As Workbook
Dim Mysheet AS Worksheet
Dim Myrange As Range
Dim i As Long
Dim Torihiki AS Steing

Set Mybook = Workbook.Add
Set Mysheet = Worksheets("Sheet1")
Set Myrange = Range("J2:J5")

Application.ScreenUpdating = False

For i = 1 To Myrange.Rows.Count
Worksheets(i).Select
Torihiki = Cells(i+1,10).Value
Activesheet.Name = i & "_"& Torihiki

With Mysheet
.Range("J8").Value = Torihiki
.Range("A1").CurrentRegion.AdvancedFilter _
Action:=xlFilterCopy, CritreriaRange("L8:J9"),_
CopyToRange("A1")
End With

Columns("C").Delete
Columns("A:H").AutoFit
Next
Set Mybook = Nothing
Set Mysheet = Nothing
Set Myrange = Nothing
Application.ScreenUpdating = True

End Sub

と書きました。
実行すると、 実行エラー '1004'
指定された範囲を使用して、コマンドを完成できませんでした。
範囲内のセルを一つ選択しコマンドを、再実行してください。

と、表示され、デバッグをクリックすると、
.Range("A1")~CopyToRange:=Range("A1")の所が、黄色く反転され
CopyToRange:=Range("A1")の所が、黄色い→で表示せれます。

どの様に対処したらいいか解らず質問しました。解る方に、アドバイスをもらえれば嬉しいのですが。
お願いします。
(文書力が乏しいため、解りづらくてすみません。)

閲覧数:
335
回答数:
1

違反報告

ベストアンサーに選ばれた回答

ja7********さん

2011/10/2119:34:08

ちょっと見ただけですが・・・
AdvancedFilterの名前付き引数の指定の仕方が違っていると思います。
Book名&Sheet名の指定は確認していませんが、構文は こんな感じかと・・・

.Range("A1").CurrentRegion.AdvancedFilter _
Action:=xlFilterCopy, CritreriaRange:=Range("L8:J9"), _
CopyToRange:=Range("A1")

質問した人からのコメント

2011/10/23 14:01:58

驚く Ja7awuさん回答ありがとうございます。
コードを、良く見直してみます。

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる