• 締切済み

エクセル オートフィルタの抽出条件をデフォルト設定したい

エクセルでQ&Aを作成しています。 A列にQuestion B列にAnswer を入力してだけのシンプルな物です。 それぞれの列にオートフィルタをかけ、任意のキーワードを含むQ&Aだけを抽出できるようにしてあります。 実際の作業手順としては、下記の通りです。  1.オートフィルタの▼ボタンをクリック  2.「オプション」をクリック  3.任意のキーワードを入力  4.キーワードの右側のドロップダウンメニューで「を含む」を選択  5.「OK」ボタンをクリック この手順の「4」の部分をデフォルトで設定しておくようにはできないでしょうか? (オートフィルタオプションウインドウを開くと「を含む」があらかじめ選択された状態になっている) この手順1.2.4までをマクロで記録して、マクロ実行ボタンをクリックすれば、オートフィルタオプションのウインドウが開いて任意のキーワードを入力する仕組みを作りたいと思っています。 しかし、オートフィルタオプションのウインドウを開いた状態のまま、マクロの記録を停止することができず、思い通りになりません。 自動的に記録されたマクロを見てみると 「Selection.AutoFilter Field:=1, Criteria1:="=**", Operator:=xlAnd」となっています。 この文のどこかを書き換えることなどで対応できないでしょうか? または、他によい方法があれば教えてください。 よろしくお願いします。

みんなの回答

noname#52504
noname#52504
回答No.2

メニューやダイアログ上の操作自体を制御するのはVBAでは難しいと思います。 適当なセルを「検索窓」にして、そのセルの内容が変更されたときに、 「*セルの値*」を条件に抽出するようマクロを組めばよいのでは?

  • x0000x
  • ベストアンサー率52% (67/127)
回答No.1

こんにちは。 >「Selection.AutoFilter Field:=1, Criteria1:="=**", Operator:=xlAnd」となっています。 上記の「Criteria1:="=**" 」で"*"と"*"で挟むことが"含む"の意味です。 "aaa"を含むは"=*aaa*" となります。 "*"は「任意の文字列に一致する」と意味です。

00112233
質問者

補足

マクロの中身については、ご回答くださった内容で理解することが出来ました。「aaa」を様々なキーワードに置き換えれば、マクロが組めることは理解しました。 しかし、検索するキーワードは毎回異なるので、そのすべてのマクロを用意しておくことは出来ないのです。 オートフィルタオプションウインドウを開くと「を含む」があらかじめ選択された状態を作り出すために、どうした良いかを教えて頂きたいと思います。

関連するQ&A

  • excel 2003 オートフィルタ!

    excel 2003で、オートフィルタがうまくいきません。 A列の2行目から、1~5までの数字がランダムに並んでいるとします。 A1セルをオートフィルタし、 条件を、オプション>3を含む で指定すると、3がフィルタされてほしいのですが 1つも抽出されません。 3で始まるもだめでした・・ フィルタで抽出するマクロをくんでいて 列は、20列以上あり、 列によって、文字や数値があります。 フォームで列を選び、検索文字を入力して Criteria1:="=*" & 検索文字 & "*", Operator:=xlAnd と言う感じでフィルタしています。 文字はできますが、数値ができないのは、なぜでしょうか・・・

  • オートフィルターの条件指定

    こんばんは。 セルA1に入力した値で始まる値を検索したく困っています。 素直にオートフィルターのオプションから指定すれば出来るのですが、 誰でも処理できるよう「セルA1に条件を入力。集計ボタンをクリック。」で済ませたいのです。 Selection.AutoFilter Field:=1, Criteria1:="=@@@* ", Operator:=xlAnd 上記@@@をセルA1に指定させる記述を教えて下さい。 よろしくお願いします。

  • オートフィルタの項目設定

    オートフィルタにてあるセルに値(又は文字列)を入力すると、それに対応したフィルタをかけられるようにするにはどうしたらよいですか? Criteria1:= Range"A1".Value ではエラーが出ます。 マクロは記録のみでしか作成したことがない初心者ですがよろしくお願いします

  • エクセルのオートフィルタで?

    教えて下さい。 現在あるデータベースを作成していますが。A列には入力毎に番号を1から順番にふってあります。そこで有る項目についてオートフィルタをかけるとA列の番号はとびとびになってしまうと思います。そこで質問なんですが、打ち出しの時だけでも結構ですが、オートフィルタをかけた A列の番号を簡単に1から順にふりなおすにはどうしたら良いでしょうか。 マクロでも構いません。おしえて下さい。

  • EXcelオートフィルタのオプション設定で条件として変数をマクロで組むには?

     オートフィルタ機能を使い、指定期間内のデータを抽出するようにマクロを組みたい。指定期間が一定ではないので変数を設定したいのですがうまくいきません。下記はマニュアルで入力したものをマクロに記録したものです。指定期間は他のBookのセルに入力画面として設けてあります。例えばBook2/B1(開始)~B2(終了)。 Range("A1").Select Selection.AutoFilter Selection.AutoFilter Field:=1, Criteria1:=">=2005/8/21", Operator:=xlAnd _ , Criteria2:="<=2005/9/20" Range("C1").Select End Sub

  • EXCELのオートフィルタについて教えてください。

    下記のようにデータが入力されています。   A   B   C 1 あ 2 い 3 う 4 え 5 お C列のC1に「=A1」C2に「=A2」と入力してオートフィルタを使って、「C3」以下に入力するとオートフィルタが使用できます。 しかし、以下のようにデータが入力されている場合はオートフィルタが使用できないのですが・・・   A   B   C 1 あ 2  3 い 4  5 う 6 7 え 8 9 お C列のC1に「=A1」C2に「=A3」と入力してオートフィルタを使って、「C3」以下に入力するとオートフィルタが使用できません。 簡単なことなのかもしれませんが、今一理解に苦しんでいます。 宜しくお願いいたします。

  • オートフィルターの使い方

    マクロでオートフィルタを使おうと思っているのです。 作成したリストの中で、日付でフィルタしようと思い 下記を作成してみましたがうまくいきません。 Worksheets("シート名").Range("A2").AutoFilter Field:=30, Criteria1:="<=2004/9/30", Operator:=xlAnd = 1, Criterial2:=">=2004/9/1" 条件と致しましては任意の期間(例:2004/9/1~2004/9/30)を抽出条件としたいのですが・・・ 又、セルには空白も存在します。 宜しくお願いいたします。

  • excel2000のオートフィルタマクロ

    マクロ記録の簡単な編集程度の知識しかありません。 C1に入っている文字列を、完全一致ではなく、”含む”状態でオートフィルタしたいのですが、 どの様に記述すればいいですか? 現状、下記のようになっています。 Selection.AutoFilter Field:=2, Criteria1:="C1", Operator:=xlAnd よろしくお願いいたします。

  • エクセルのオートフィルタの条件設定について

    エクセルのオートフィルタの条件設定について 毎日、システム部の方からの全社員にエラーリストが送られてきます。 その中に、自分の担当会社が含まれていればエラー対応をするのですが、 自分の担当会社を一発で表示させることは可能でしょうか? ・A列に5桁の会社番号が入っていて、B列以降に会社名以下のデータが入っている ・システム部から送られてきた時点で、オートフィルタが設定されている ・共有ファイルなので、関数を入力したりなどの変更は加えれない 今現在、オートフィルタの▽からオプションで、自分の担当会社番号をいれてフィルタをかけているが、 2つまでしか会社番号を入れれない。 自分が担当している会社は5社あるので、この作業を3回繰り返している。 抽出条件を工夫して、1回の作業でできるようになりたい。 よろしくお願いいたします。

  • エクセルのオートフィルターをマクロで記録

    エクセルのマクロ記録でオートフィルター機能を記録したのですが フィルターのボタンを押して各項目を選択するのに (すべて) (トップテン) (オプション) (空白セル) (空白以外のセル)があるのですが (空白セル)を選択すると , Criteria1:"=" (空白以外のセル)だと , Criteria1:"<>" のようにマクロ記録されます (すべて)を選択した場合 , Criteria1:が記録されないのですが これをあえて構文として書くと、どのようになるのでしょう 他のマクロで引用したいので困っています よろしくお願いいたします

専門家に質問してみよう