2017-04-19 29 views
0

以下のコードを実行すると上記のエラーが発生します。私はVBAには非常に新しく、デバッグにいくつかの支援が必要です。ランタイムエラー '1004 - Rangeクラスのオートフィルタメソッドが失敗しました

Sub TransferTest1() 

Dim INQUIRE As Worksheet 
Dim QUOTE As Worksheet 
Dim ORDER As Worksheet 
Dim YString As String 
Dim RecString As String 

Set INQUIRE = ActiveWorkbook.Sheets("Inquiries") 
Set QUOTE = ActiveWorkbook.Sheets("Quotes") 
Set ORDER = ActiveWorkbook.Sheets("Orders") 

With INQUIRE.Range("A6:K1200") 
    .AutoFilter 11, "Y" 
    .Offset(1).Resize(, 7).Copy QUOTE.Range("A6") ' columns A:G 
    .AutoFilter 
End With 

With QUOTE.Range("A6:N1200") 
    .AutoFilter 14, "Rec'vd" 
    .Offset(1).Resize(, 7).Copy ORDER.Range("A6") ' columns A:G 
    .Offset(1).Resize(, 2).Offset(11).Copy ORDER.Range("K6") ' columns L:M 
    .AutoFilter 
End With 

End Sub 

ありがとうございました!

R. Smithey

+0

あなたの範囲は、フィルタリングする範囲と正確に一致していますか? –

+0

私はA6からG6までの範囲の日付を持っています。次に、.Autofilter 11が最初にblocで列 "N"である列 "K"を.AutoFilter 14にします。 –

+0

この行だけを試してください( "A6:K1200")。AutoFilter' –

答えて

1

前に置かと.AutoFilterへの各呼び出し、

if .parent.autofiltermode then .parent.autofiltermode = false 

これは、彼らが存在する場合は任意の既存の.AutoFiltersをオフにして、彼らが存在しない場合は何もしません。

+0

このコード行は、各.AutoFilterコマンドの上の行に表示されますか?この場合、私のマクロは4回になりますか? –

関連する問題