• ベストアンサー

accessで年代別抽出方法

いま、テーブルAに名前、年齢、性別フィールドがあります。 そこでフォームからコンボボックスで年代(”20”、”30”、”40”)と選んで抽出結果をだしたいと思っています。 そこで Between [forms]![テーブルA]![年代] And [forms]![テーブルA]![年代]+9 とやってみましたが年代が空欄の場合、その他の性別などだけでの抽出がされなくなってしまいました。 (空欄だと年齢の区間が?~9歳になるから抽出されなくなるだろうことは理解しています) 説明ベタとおもいますが、年代別での抽出方法のアドバイスをお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Gin_F
  • ベストアンサー率63% (286/453)
回答No.1

フィールド|年代:[年齢] \ 10 * 10  抽出条件|[Forms]![テーブルA]![年代] Or [Forms]![テーブルA]![年代] Is Null では、どうでしょうか?

hike106
質問者

お礼

Gin_Fさん素早い回答有り難うございます! Or [Forms]![テーブルA]![年代] Is Null を追加することでうまく動作できました。 (年代:[年齢] \ 10 * 10)の部分がよく分からないのですが、どういう処理を行っているのでしょうか?

その他の回答 (1)

  • Gin_F
  • ベストアンサー率63% (286/453)
回答No.2

> (年代:[年齢] \ 10 * 10)の部分がよく分からないのですが、 \ 演算子は、商を求めることができます。 それを使って、10で割った商を10倍すれば年代を求めることができます。

hike106
質問者

お礼

>\ 演算子 今、家のmacでみてみるとバックスラッシュが表示されてます。昨日職場のxpだと¥になってて意味がわかりませんでした。 Gin_Fさんどうもありがとうございました。

関連するQ&A

  • ACCESSのクエリの抽出

    ACCESS2003を使っています。フォームのコンボボックスに入っているデータを見てクエリで抽出したいと思っています。 フォームのコンボボックスにデータが入っているときは、そのデータで抽出を行い、nullのときは抽出をやめてすべてのデータを表示させたいです。 抽出項目には、null値はありません。 クエリの抽出欄に下記の式を入れましたがうまくいきません。 IIf(IsNull([Forms]![フォーム名]![コンボボックス名])=true , Is Not Null , [Forms]![フォーム名]![コンボボックス名]) コンボボックスにデータが入っている場合は、抽出はうまくいくのですが、nullのときは、何も表示されません。 どこか式が違っているのでしょうか? よろしくお願いします。

  • access クエリでIIF文で抽出条件なし

    フォームにコンボボックスを用意し、(コンボボックスは、「両方」、「条件A」、「条件B」の3項目です) クエリで抽出条件にIIF文を使い、 IIf([Forms]![フォーム]![コンボボックス]="両方",'',[Forms]![フォーム]![コンボボックス]) ”両方”を選択した場合は、「抽出条件なし」としたいのですが、できませんでした。 別案として、 IIf([Forms]![フォーム]![コンボボックス]="両方","条件A" or "条件B",[Forms]![フォーム]![コンボボックス]) なども試しましたができませんでした。 どうか解決方法をご教授願います。

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

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

  • Access コンボボックスを使って抽出

    Access2000・Windows2000を使用しています。 レコードの抽出をしたいと思います。テーブルは1つ、フィールドには日付・商品名・業者名・単価・・・とあります。フォームで「商品名から抽出(コンボボックスから商品を1つ選ぶ)」または「業者名から抽出(コンボボックスから業者を1つ選ぶ)」(コンボボックスから商品を1つ選ぶ)出来るようにし、なおかつ今月のレコードのみ表示させたいのですが、まずそのテーブルを1つ作成した時点でつまづいてしまっています。 どなたかご教授お願いします。

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

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

  • Accessのコンボボックスの値が消える

    お伺いいたします Accessのフォーム(フォーム請求実績)上に置いたコンボボックスで ユーザーリスト(テーブル)から目的のデータを 選択出来るように設定していますが、 目的のデータをクリックすると、コンボボックスに一瞬、表示された後、消えて空欄になります。 目的のデータ(販売先名)で販売実績表(クエリ)の中の販売先別のデータを抽出(Filter)させていますが目的のデータの抽出はできるのですが、 コンボボックスの表示が消えるので困っています。 因みに、請求実績データ(選択クエリ)の販売店フィールドの抽出条件欄には [forms]![フォーム請求実績]![コンボボックス1]で 抽出するようにしています。 ぐだぐだと長い説明で解りにくいと思いますが要は コンボボックスのデータを選択してもコンボボックスに表示されないのです。 こんな経験された方よろしくアドバイスお願いいたします。

  • Accessのリストボックスを使って抽出

    抽出用のフォームを作成しているのですが、その中にリストボックスがあり、何も選択しなかった場合は、すべての項目が表示される様にしたいと思っております。自分なりに色々と調べたのですが、どうしても希望の動作になりません。どの様にすれば良いのか教えて頂けないでしょうか? Access2003を使用しております。 Form-A(メインフォーム名)←テーブルAを元に作成(項目名同じ) 番号(主キー)、氏名、性別、A1、A2・・・ A1、A2は、する・しないのどちらかを入力。 Form-B(サブフォーム名)←テーブルBを元に作成(項目名同じ) ID(主キー)、番号、担当、訪問日、次回訪問日、期間 担当は、値集合タイプ:テーブル/クエリ、値集合ソース:テーブルあ(フィールドは担当のみ)5名程の名前を登録しし、リストボックスにて選択できる様にしています。 現在、下記の様な抽出用のフォームがあります。 Form-抽出(抽出用フォーム名) A1(チェックボックス) A2(チェックボックス) 担当(リストボックス:値集合タイプ:テーブル/クエリ、値集合ソース:テーブルあを設定) [OK]ボタンを押すと抽出(クエリQにて条件を設定)する様にしています。 クエリQ(テーブルA、テーブルBを元に作成) 番号(主キー)、氏名、性別、A1、A2、ID(主キー)、番号、担当、訪問日、次回訪問日、期間 現在設定しているのは、 A1の抽出条件:IIf([forms]![Form-抽出]![A1]=True,True,False) A2の抽出条件:IIf([forms]![Form-抽出]![A2]=True,True,False) 担当の抽出条件:[Forms]![Form-抽出]![担当リストボックス] 訪問日の抽出条件(複数情報がある為、最近の訪問日のデータのみ対象となる様にしています。):DMax("訪問日","テーブルB","[テーブルB]![番号] ='" & [テーブルB]![番号] & "' And 訪問日 <Date()") 今の設定ですと、担当を選択しなかった場合、何も抽出されてきません。 これを、すべて表示出来る様にしたいのが希望です。 Access初心者の為、説明がわかりづらかったり情報が足りないかもしれませんが、すぐに補足致しますので、どうぞよろしくお願い致します。

  • アクセスでクエリーによる抽出方法

    アクセスの超初心者です。 クエリーのデータをフォームのコンボボックス等のデータを選ぶことにより抽出したいのです。クエリーの抽出条件にフォームのコンボボックスを割り当てて抽出することはできるのですが、例えばクエリーデータは下記のようになっています。  A  B  石川  100 東京  200   沖縄  150 フォームのコンボボックスで石川を選べば  "石川" "100"と表示できますが、コンボボックスに”すべて”という項目をつけてその”すべて”をクリックするとクエリーが全表示になるようにしたいのです。(そのクエリーにはすべてという項目はない) 長くなりましたがおわかりいただけたでしょうか。よろしくお願いします。 また、クエリーを使わず別の抽出方法がありましたら教えてください。というのもいろいろな抽出条件をするのにそのつどクエリーを作らなければならないからです。よろしくお願いします。

  • Access2007 サブフォームでフィルタリングする方法

    お世話になっております。 フォーム上に関連性のないサブフォームがあります。 フォームのコンボボックスでデータを選び検索ボタンをクリックすると、サブフォームのフィールドがコンボボックスのデータで抽出できるようにしたいと思います。 このように書いてみましたが、検索ボタンをクリックするとサブフォームの全てのデータが消えてしまい、実現できませんでした。 Me.FilterOn = True Me.Filter = "(Forms!フォーム!サブフォーム1!コンボ Like '*" & Me.フィールド & "*')" サブフォームでフィルタリングできる方法を教えていただければ幸いです。 よろしくお願いいたします。

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

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