質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

マクロ

定義された処理手続きに応じて、どのような一連の処理を行うのかを特定させるルールをマクロと呼びます。

解決済

エラー:RangeクラスのAutoFilterメゾットが失敗しました。解消したい

ppss
ppss

総合スコア34

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

マクロ

定義された処理手続きに応じて、どのような一連の処理を行うのかを特定させるルールをマクロと呼びます。

2回答

0リアクション

0クリップ

12436閲覧

投稿2021/03/10 04:34

VBAにてオートフィルターのコードを書いています。

「RangeクラスのAutoFilterメゾットが失敗しました。」
というエラーが発生していて困っています。

**やりたい内容

・ユーザーフォームのリストボックスの値を選択する(リストボックスは複数選択でき、5つ用意してある)
・それぞれのリストボックスで選択された項目をANDでオートフィルタ―かけたい**

実際のコードと、ユーザーフォーム、データシートの画像を貼り付けました。
ご参考ください。

どのようなコードにすれば実現できるでしょうか。
ご教示お願い申し上げます。イメージ説明
イメージ説明

vba

Dim RER() As String Dim r As Integer Dim rnt As Integer For r = 0 To ListBox1.ListCount - 1 If ListBox1.Selected(r) = True Then rnt = rnt + 1 ReDim Preserve RER(1 To rnt) RER(rnt) = ListBox1.List(r) End If Next r '選択項目でのフィルター 'RERと同様にJER,FER,KER,GERは作成しています Dim arr As Variant arr = Split(Join(RER, ",") & "," & Join(JER, ",") & "," & Join(FER, ",") & "," & Join(KER, ",") & "," & Join(GER, ","), ",") Worksheets("製品データ").Range("A1").AutoFilter Criteria1:=arr, Operator:=xlFilterValues

以下のような質問にはリアクションをつけましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

リアクションが多い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

マクロ

定義された処理手続きに応じて、どのような一連の処理を行うのかを特定させるルールをマクロと呼びます。