プロが教えるわが家の防犯対策術!

EXCEL2003のVBAで AutoFilter で 「名前付き引数が見つかりません」

のエラーが出ます。解決方法をご教示下さい。

Private Sub CommandButton14_Click()
Dim myStr
Workbooks("***.xls").Activate
myStr = Sheet1.Range("F9").Value
Range("F2:F17").AutoFilter Field:=1, Criterial:=myStr
End Sub

A 回答 (1件)

タイプミスですね。


Criterial:=myStr

Criteria1:=myStr
にしてください。
[Criteria1]の末尾はl(L小文字)ではなくて、1(数字)です。


あと、書き方として不適切な部分ですが・・・(なぜか動いている:excel2007)
>myStr = Sheet1.Range("F9").Value

のsheet1の部分はどうなっているのでしょうか?

Dim Sheet1 As Worksheet
Set Sheet1 = Worksheets("Sheet1")
のようにsetコマンドで指定してあれば有効ですが、そうでないなら正しくシートとして指定した方が良いでしょう。

myStr = Sheets("Sheet1").Range("F9").Value
myStr = Sheets(1).Range("F9").Value
    • good
    • 0
この回答へのお礼

早速、ご親切なご教示有難うございました。
良く解りました。 マニュアルを読み違えておりました。

お礼日時:2010/06/26 23:27

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!