[修正]:Range クラスの AutoFilter メソッドが失敗する (5 つの解決策)
エラー メッセージ AutoFilter method of Range Class Failed の考えられる原因と解決策を見つけるのに苦労している場合 この記事はあなたのためのものです。それでは、本編に入りましょう。
ワークブックをダウンロード
Range Class Failed の問題の Autofilter メソッドに対する 5 つの修正
ここでは、5 を表示します 次のデータセットを範囲として使用して、オートフィルター機能を適用して基準に基づいて範囲をフィルター処理するソリューションを使用します。
Microsoft Excel 365 を使用しています 必要に応じて他のバージョンを使用できます。
修正-1 :フィールド番号を修正して範囲クラスの AutoFilter メソッドが失敗する問題を解決する
ここでは、 2500 を超える売上値に基づいて、次の範囲をフィルタリングしようとします。 VBA の助けを借りて コード。
範囲をフィルタリングするために、次のコードを使用しました
Sub fixing_autofilter_issue_1()
Dim sht As Worksheet
Set sht = Worksheets("Field Number")
sht.Range("B3:D3").AutoFilter field:=100, Criteria1:=">=2500"
End Sub
ここでは、フィールド: 100 に割り当てた範囲の列番号を示すためのものです 3 以下です この範囲の列。
F5 を押した後 Range クラスの AutoFilter メソッドが失敗しましたというエラー メッセージが表示されます .
➤ この問題を解決するには、範囲の列番号に対応する正しいフィールド番号を使用します (ここでは 3 を使用しています) 販売のシリアル番号であるため 範囲の列)。
Sub fixing_autofilter_issue_1()
Dim sht As Worksheet
Set sht = Worksheets("Field Number")
sht.Range("B3:D3").AutoFilter field:=3, Criteria1:=">=2500"
End Sub
➤ F5 を押します .
これで、エラー メッセージを表示することなく、基準に従って範囲をフィルター処理できるようになります。
続きを読む: オートフィルターがオンになっているかどうかを確認する Excel VBA (4 つの簡単な方法)
Fix-2 :範囲クラスの AutoFilter メソッドを解決するための正しい範囲の使用に失敗した問題
Sales に基づいて、次のデータセットにフィルタを適用してみます。 $2,500.00 より大きい値の列 .
Range の範囲をフィルタリングするために、次のコードを使用しました。
Sub fixing_autofilter_issue_2()
Dim sht As Worksheet
Set sht = Worksheets("Range")
sht.Range("D3:D100").AutoFilter field:=3, Criteria1:=">=2500"
End Sub
ここで、範囲 D3:D100 を使用したことがわかります。 フィールド番号 3 であり、この範囲には 1 つの列しか含まれていないため、これらの値は互いに一致しません。
F5 を押した後 エラー メッセージが再度表示されます。
➤ コードを次のように修正
Sub fixing_autofilter_issue_2()
Dim sht As Worksheet
Set sht = Worksheets("Range")
sht.Range("B3:D3").AutoFilter field:=3, Criteria1:=">=2500"
End Sub
範囲を B3:D3 に変更しました
➤ F5 を押します .
その後、エラー メッセージを表示することなく、条件に従って範囲をフィルター処理できます。
Fix-3 :テーブルのフィルタリングにより、Range クラスの AutoFilter メソッドが失敗しました
ここに、次のテーブルがあります Sales に基づいてこのテーブルをフィルタリングするコードを使用して、フィルタ オプションを適用しようとします。
この目的のために、次のコードを使用しました
Sub fixing_autofilter_issue_3()
Dim sht As Worksheet
Set sht = Worksheets("Table")
sht.Range("B3:D3").AutoFilter field:=3, Criteria1:=">=2500"
End Sub
このコードではすべて問題ないようです。確認しましょう。
しかし F5 を押した後 、エラー メッセージが表示されます。
この問題を解決するには、このテーブルを範囲に変換する必要があります。
➤ テーブルを選択して テーブル デザイン に移動します タブ>> ツール グループ>> 範囲に変換 オプション。
次に、変換を確認するためのメッセージ ボックスが表示されます。
➤ はいを押します
その後、作成したテーブルから範囲を取得します。
➤ では、前のコードをもう一度適用してみましょう。
Sub fixing_autofilter_issue_3()
Dim sht As Worksheet
Set sht = Worksheets("Table")
sht.Range("B3:D3").AutoFilter field:=3, Criteria1:=">=2500"
End Sub
➤ F5 を押します .
ご覧のとおり、今回は AutoFilter メソッド
Fix-4 :ピボット テーブルのフィルタリングが原因で、Range クラスの AutoFilter メソッドが失敗しました
ここに、次のピボット テーブルがあります。 AutoFilter メソッドの適用に基づいて、2 番目の列に売上値があります。 .
そこで、次のコードを適用しました。
Sub fixing_autofilter_issue_4()
Dim sht As Worksheet
Set sht = Worksheets("Pivot")
sht.Range("A3:B3").AutoFilter field:=2, Criteria1:=">=2500"
End Sub
ここでは、フィールド番号 2 範囲 A3:B3 の 2 列目です .
F5 を押した後 、エラー メッセージ Range クラスの AutoFilter メソッドが失敗しました が表示されます .
この問題を解決するには、この AutoFilter メソッド を適用します。 ピボット テーブルのソース範囲に。
ご覧のとおり、このテーブルのソース範囲は ソース にあります。 シートにコードを適用します。
➤ このソース範囲に次のコードを適用します。
Sub fixing_autofilter_issue_4_1()
Dim sht As Worksheet
Set sht = Worksheets("Source")
sht.Range("B3:D3").AutoFilter field:=3, Criteria1:=">=2500"
End Sub
➤ F5 を押します .
最終的に、指定された 売上 の基準に基づいて、範囲を絞り込むことができます。
Fix-5 :ヘッダーの代わりに範囲全体を使用することによる問題
このセクションでは、Range クラスの AutoFilter メソッドが失敗しましたというエラー メッセージがほとんど表示されない軽微な問題について説明します。 .ただし、このエラーの原因になる可能性があるという事実に気付くことができます。
前の例と同様に、 AutoFilter メソッド を適用します。 次の範囲に。
フィルターを適用するために次のコードを使用しました。
Sub fixing_autofilter_issue_5()
Dim sht As Worksheet
Set sht = Worksheets("Header")
sht.Range("B3:D11").AutoFilter field:=3, Criteria1:=">=2500"
End Sub
ここでは、範囲 B3:D11 を使用しています。 不要なデータセット全体に対して、時にはそれが大きな範囲のエラーメッセージの原因になることがあります.
したがって、ヘッダーのみを範囲として使用することで、そのコードを次のコードに変更できます。
Sub fixing_autofilter_issue_5()
Dim sht As Worksheet
Set sht = Worksheets("Header")
sht.Range("B3:D3").AutoFilter field:=3, Criteria1:=">=2500"
End Sub
F5 を押した後 、問題に直面することなく、目的の結果が得られます。
結論
この記事では、Range Class Failed の AutoFilter メソッドの可能な修正をカバーしようとしました。 エクセルの問題。役に立つことを願っています。提案や質問がある場合は、コメント セクションで自由に共有してください。
関連記事
- Excel VBA で表示されている行をオートフィルターしてコピーする方法
- VBA オートフィルター:最小から最大への並べ替え (3 つの方法)
- Excel で VBA を使用して特定の値と等しくない値をオートフィルター処理する方法
- Excel VBA:オートフィルターが存在する場合は削除する (7 つの例)
-
[修正]VJoyのインストールに失敗しました
失敗する可能性があります VJoyをインストールする 主に、ドライバーの署名が正しく適用されていないことが原因です。さらに、WindowsまたはVJoyの破損したインストールも、検討中のエラーを引き起こす可能性があります。一部のユーザーは、アプリケーションの更新中にも問題に直面しました。この問題は、WindowsXP以降のほぼすべてのバージョンのWindowsで発生することが報告されています。 トラブルシューティングプロセスに進む前に、ローカルディスクからインストールすることを確認してください。 (USBや外付けディスクではありません)。さらに、ゲームコントローラーを切断します (ジョイス
-
[FIX]VKEnumeratePhysicalDevicesが失敗しました
一部のWindowsユーザーは、 VKEnumeratePhysicalDevices Failed with Error(VK_Error_Initialization_Failed)に遭遇しています。 VulkanコンピューティングAPIテクノロジーを積極的に使用している特定のゲームを起動しようとすると致命的なエラーが発生します。ほとんどの文書化されたケースでは、このエラーはWolfensteinタイトルとDoomタイトル(通常はBethesdaによってリリースされたゲーム)で発生することが報告されています。 このエラーが発生した場合は、GPUがVulkanをサポートできることを確認す