[[20111216222216]] 『エラー400が表示される。』(むらちん) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『エラー400が表示される。』(むらちん)

Sub 抽出条件()

    Dim myFld As String, myCri As String
    Dim myRow As Long
    Dim Sh6 As Worksheet, Sh7 As Worksheet
        Set Sh6 = Worksheets("項目抽出")
        Set Sh7 = Worksheets("有効期限")

        myFld = 8
        myCri = 99999999

        With Sh6
            .Range("A1").AutoFilter Field:=myFld, Criteria1:=myCri
            myRow = .Range("A" & Rows.Count).End(xlUp).Row
            Sh7.Range("A:H").ClearContents

            .Range("A1:H" & myRow).Copy Sh7.Range("A1")
            .Range("A1").AutoFilter
        End With
        Worksheets("有効期限").Activate
        Range("A1").Select

End Sub

上記マクロを実行するとデータは抽出され、しかもSh7”有効期限”に移行されているようなのですが、最後に400のエラーが表示されます。表示されない方法を教えていただきたいのですが。よろしくお願いいたします。
シート、ブックの保護はしていません。(保護していると実行前に400が表示されます。)マクロのセキュリティーもVBAプロジェクト・・・・を信頼するにチェックを入れています。
Windows7 Excel2007


 テキトーな環境でやってみましたが、エラーは出ませんでした。
 (エクセルのバージョンは、2002ですが。)

 ↓のスレと似てる様に思います。
[[20060906201109]] 『オートフィルタ後の貼り付け』(shirot)

 新しい環境(新しいブックに、テキトーにデータを作って該当コードを貼り付け)で
 実行してみるとどうでしょう?

 (HANA)

 関係ないかも知れませんが。。。

 オートフィルタの範囲をきちんと指定してみるとどうでしょう?
            myRow = .Range("A" & Rows.Count).End(xlUp).Row
            .Range("A1:H" & myRow).AutoFilter Field:=myFld, Criteria1:=myCri

 それから、ファイルの保存形式は何に成っていますか?
 xlsで保存してあるなら、Rows.Count の所に値を入れてみるのもやってみてもらいたいです。
            myRow = .Range("A65536").End(xlUp).Row

 (HANA)


HANA様 

ご回答いただきありがとうございます。
素人なので根本的なことが分かっていないのが悪いのですが、
オブジェクトをWarksheetsにしてイベントを設定したらエラーが出なくなりました。

理由は全然わかりません。
お手数をお掛けして申し訳ありませんでした。

(らっち)


もうひとつ忘れていました。上記設定をした後にマクロを実行すると、最後のRang("A1").Selectにエラーが出たため、削除したら問題なくなりました。
(らっち)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.