• ベストアンサー

複数の抽出条件

how-do-you-doの回答

  • ベストアンサー
回答No.2

御疲れ様です 複数の条件での抽出は、マクロを使用するよりはVBAにて一括抽出した方が簡単だと思われます。 マクロで出来ないかと言われれば、「う~ん」と答えるしかありません... 出来ないことではありませんが、メンテナンスが面倒になります。

関連するQ&A

  • コントロールの違う複数条件

    個人情報のフォームから複数条件でレコードを抽出したいと考えています。 オプションボタンとコンボボックスとトグルボタンなのですが、ANDを使って条件をつなごうと思っているのですが、なかなかうまくいきません。 この方法以外でもよい方法があれば教えて欲しいのですが。 また抽出したフォームに修正や追加や削除もしたいと思っています。

  • アクセス 複数条件の抽出~出力について

    ■アクセスのフォームにて、複数の条件を入力し、合致するリストをエクセルで出力する   データベースを構築しようとしています。  ⇒この複数の条件を入力する件に関し質問です。 ■目的は、顧客からのアンケート回答結果をDBから取出し、エクセルにて解析を行う事です。  情報量が膨大であるため、セグメントした形で出力し効率を上げたいと考えています。 ○テーブルのフィールド構造:   支店(テキスト型)、顧客No(数値型)、顧客名(テキスト型)、質問1(数値型)、質問2、・・・   ○フォーム「データ抽出」の構造: [支店名1][支店名2] [顧客No1][顧客No2] [顧客名1][顧客名2]       【出力ボタン】 ※上記テキストボックスいずれかに入力された条件に合致するデータが          【出力ボタン】を押すとエクセルに出力されるという構造です。          ※ボタンのイベントに「抽出マクロ」を設定。 ○抽出クエリ: 支店 [Forms]![データ抽出]![支店名1]  Is Null [Forms]![データ抽出]![支店名2]  Is Null 顧客No [Forms]![データ抽出]![顧客No1]  Is Null [Forms]![データ抽出]![顧客No2]  Is Null 企業名 like "*" &[Forms]![データ抽出]![顧客名1]& "*" Is Null like "*" &[Forms]![データ抽出]![顧客名2]& "*" Is Null               ○マクロ(抽出マクロ):  クエリを開く (抽出クエリ)  コマンドの実行(エクセルに出力)  閉じる (抽出クエリ) と設定しました。そこで実行確認すると・・・・  (例)     (1)支店名1だけに入力して、他は空欄で出力ボタンを押下。     ⇒条件セグメントされず、全てのデータがエクセル出力されてしまう。     (2)全ての項目に入力して出力ボタンを押下     ⇒条件セグメントされたデータがエクセル出力される。  という現象が起こりました。  例示(2)は良いとして、(1)の様な空欄がある状態でも、条件にマッチした出力をしたいのですが上手くいいかず困っています。    尚、クエリの抽出条件を支店フィールドだけにした所・・ 支店  [Forms]![データ抽出]![支店名1]   Is Null  [Forms]![データ抽出]![支店名2]   Is Nul 支店名1に入力して支店名2は空欄であっても条件にマッチした出力結果が得られました。 長文恐縮でございますが、どなたか解決法をご教授いただきたく存じます。よろしくお願いいたします。

  • フォームからクエリの抽出条件を入力する方法

    既存のデータベースより複数のテーブルを結合し、必要なカラムだけを表示させるようなクエリを作成しました。 他の人でも操作ができるように、フォームを作成し、テキストボックスにて抽出条件を指定し、クエリやレポートを出力するような形にしたいと思っています。 このクエリの抽出条件をフォームより指定する方法で悩んでいます。 現在、作成したクエリの抽出条件の中に [Forms]![フォーム名]![テキストボックス名] と入力し、フォームのテキストボックスで抽出条件を記入してクエリを実行させているのですが、これでは複雑な条件 (Between~ や 条件1 or 条件2 等の指定) を入れると「直前の操作はキャンセルされました」とポップアップが出てしまい、思うとおりにうごきません。 フォーム内でこのような抽出条件範囲の指定ができるようにするにはどうしたらよろしいでしょうか? よろしくおねがいします。

  • ACCESSのマクロを使った抽出について

    質問をさせてください。 私は今、アクセス2002を使ったデータベース管理をしています。 そこで、データベースを検索方式でレポート形式表示しようと思い、フォームに抽出するテキストボックスとボタンを作りました。 その抽出するためのボタンに仕込んだマクロ「フォームを開く」のWHEREに [名前] Like "*" & [Forms]![フォーム]![テキストボックス] & "*" と入力して使っています。一応動きますが抽出できるのは1項目のみです。 このままでは使いにくいので、抽出する条件を複数指定して抽出をしたいと考えているのですが どうも上手く行きません。専門に扱っている本にも詳しくはのっていませんでした。 そこで ---------------------------------- 名前[テキストボックス1] 住所[テキストボックス2]         [ボタン] ---------------------------------- というようなフォームで、 レポート中の名前に○○を含み、 なおかつ住所に○○を含むデータを1度の検索で抽出するには どうしたら良いのでしょうか。 そして、もうひとつ。 同じようなものなのですが、コンボボックスを使って性別の抽出を行おうと思っているのですが 男性女性全てを抽出するためにはコンボボックスの文字が"すべて"では上手く動きません。 原因は"すべて"というワードを性別が含んでないからなのですが "すべて"を指定した時、全ての性別を抽出するにはまくロにどういった命令を書けば良いのでしょうか。 よろしくお願いします。

  • エクセル 複数条件抽出について

    エクセル2013を使用しています。 データシートより複数条件に当てはまるデータを 別のシートへ必要な項目のみ抽出する方法(関数orマクロ)をお教え下さい。 データシート:A列からU列まで様々なデータが入力されている。 抽出条件:H列とN列 抽出する項目:C列・I列・M列・O列・Q列・R列・S列 (抽出する項目は増える可能性有) 複数条件の抽出はフィルタオプションで出来たのですが、 抽出が必要な項目を指定する方法が分かりませんでした。 宜しくお願いします。

  • Access2007でフィルタ条件を保存しないようにするには?

    Access2007でシステムを作っています。 表形式のフォームのフォームヘッダにコンボボックスを作成し、 コンボボックスで選択した値でレコードが抽出されるようにしたいのです。 今作っているのは、マクロの「フィルタの実行」でWhere条件のところに条件を入れています。 コンボボックスの更新後処理でそのマクロを実行しています。 フォームを開いて、1回目はうまく動くのですが、コンボボックスの値を変更しても抽出結果が最初と変わりません。 どうすればよいでしょうか? 良い方法があれば教えてください。

  • 複数条件抽出(アクセス)

    F得意先マスターを作成しました。得意先CD、得意先名、フリガナ、住所、TELの項目名があります。(テーブルから作成しました) 例えば、フリガナがフで始まり、住所が神奈川で始まるものを抽出したいので、 テキストボックスを二つ作成し、コマンドボタンも作成しました。一つ目のテキストボックスにはフリガナを入力、二つ目には住所を入力します。 これを抽出するマクロを作成したいのですが、どうしてよいのか?? (また、一つ目のテキストボックスには何か条件を入れますが、二つ目にはいれないで、抽出したいというものにも対応したいと思っています)

  • 選択クエリでの複数抽出条件の記述について

    フォーム上に「テキストボックス」、「コンボボックス」、「チェックボックス」の項目があって、それぞれの条件に合致した、データを抽出する選択クエリを書いてるのですが、うまく抽出してくれません。 「テキストボックス」、「コンボボックス」には、[Forms]![テーブル名]![入力するボックスの名前] or 、[Forms]![テーブル名]![入力するボックスの名前] is nullと記述しています。 「チェックボックス」には、、[Forms]![テーブル名]![チェックボックスの名前] = True or [Forms]![テーブル名]![チェックボックスの名前] = Falseと記述しています。 しかしながら、任意のコンボボックスからテキストを選択し、チェックボックスにレのついたデータを抽出したくても正しいデータを表示してくれません。 どなたか、クエリに詳しい方よろしくお願いいたします。

  • コンボボックスの抽出条件のLikeについて

    フォーム内のコンボボックス処理について 現在ACCESS2002でDBを構築しております。 初心者です。 フォーム内でテキストボックスから値【a】をもらい、その【a】を抽出条件として抽出結果を コンボボックスに表示したいと考えております。 ※like関数を使用 Private Sub テキスト1_AfterUpdate() DoCmd.Requery "コンボ1" Me!テキスト1.Requery End Sub コンボボックスの値集合ソースの抽出条件で ((テーブル.カラム) like "'*" & Forms!フォーム!テキスト1 & "*'") 上記で指定したのですが、何も抽出されません。 イコールで下記を実行すると値は抽出されます。 ((テーブル.カラム) = Forms!フォーム!テキスト1 ) LIKE関数の使い方が悪いのでしょうか。 お手数ですが、ご教授願います。

  • エクセルで複数の条件で抽出するには

    エクセルで顧客管理をしていますが複数の条件で抽出するにはのヘルプと同じ方法でやっているつもりなのですが抽出されません。 ちゃんと見出し部はリストからコピーして空白行をリスト上部に作って範囲指定しているつもりなのですがフィルターオプションの設定をしただけでは駄目なのでしょうか?オートフィルターだけでは抽出しきれないものですから教えてください よろしくお願いいたします。