• ベストアンサー

accessでサブフォームへクエリのデータを表示したいのですが、

accessでサブフォームへクエリのデータを表示したいのですが、 すべてのデータが表示されず、飛び飛びに表示されてしまいます。 とくにフィルタなどはかけていないのですが、どうしてこのようなことになるのでしょうか?

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

  • ベストアンサー
  • piroin654
  • ベストアンサー率75% (692/917)
回答No.1

クエリのデータにNull値があるのでは と思われます。 クエリを単独で開いて、入っている 値を確認してみてください。 表示するフィールドが数値の場合、 値がない場合でも0を表示する方法も あります。 その場合は、 Nz(フィールド) のようにNz関数を使います。

その他の回答 (1)

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.2

失礼しました。 Nz([フィールド],0) です。 クエリの構造とクエリの が参照しているテーブルの 構造がわかればわかりやすいのですが。

関連するQ&A

  • Accessでのサブフォーム内の再クエリについて

    Access上で新しいデータベースを作成中なのですが、サブフォーム内の再クエリが上手くできません。 2つのコンボボックスを連動させた物がサブフォーム内にあるのですが、この2つを連動させる為にどうしてもサブフォームでの再クエリが必要となります。 そして、その再クエリのマクロでのコントロール名がわかりません。 最初のコンボボックスを[果物]次のコンボボックスを[りんご]と仮定すると、 [果物]→再クエリ→[りんご]のような形になる為、コントロール名は[りんご]になるはずなのですが、サブフォーム内の[りんご]の為、なんと表現していいのかわかりません。その結果、上手く再クエリが働いてくれません。 コントロール名はなんと書けばよろしいのでしょうか? (何も書かなくても再クエリされないです…) Access初心者なのでわかりやすく言っていただければと思います。 長い質問になってしまいましたがよろしくお願いいたします。

  • サブフォームにデータが表示されない!

    サブフォームにデータが表示されない! フォーム(1)(非連結のtxt顧客コード) フォーム(1)にサブフォーム(2)(レコードソースはクエリ(3))を作り、 クエリ(3)顧客コードの抽出条件に[forms]![フォーム(1)].[form].[txt顧客コード]で選択しています。 フォーム(1)が開いた時にクエリ(3)は抽出しているのにそのデータがサブフォーム(2)に表示されません・・・ フォーム(1)を一度デザインビューにして開き直すとサブフォーム(2)に反映表示されます。 いろんな所にRequeryを入れたりしてみましたが、フォーム(1)を開いたときに一発で表示されません、教えてください!宜しくお願いいたします。

  • サブフォームの条件について(アクセス2003)

    アクセス2003で入力フォームを作成しています。入力フォーム上には、売上日「2009/07/30」とその詳細を入力します。このフォーム上にサブフォームの過去6回分の売り上げデータも表示します。ここで、このサブフォーム上に同じ売り上げ日「2009/07/30」が表示されるのですが、この日の分は2重表示になるので省きたいと考えています。クエリの条件のところで、売上日:<Date()としてとりあえず、今日入力して今日のうちに印刷すれば、サブフォーム上は「7/30」分は表示されないのですが、これが明日「7/31」になると入力フォームの売上日は「7/30」でサブフォーム上の売上日も「7/31」より前の「7/30」なので両方表示されてしまいます。当日中に印刷までしてしまえばよいといわれればそれまでなのですが、それでは不便です。フィルタの非選択フィルタを使おうとも思ったのですが、いろいろな人が入力操作するので、なるべく簡単にできたらと思います。 どなたかよい方法を教えてくださいませんか?よろしくお願いいたします。

  • Access:サブフォームにクエリ表示⇒フィールドを絞り込みたい

    Access2003 WinXP です。 フォームにサブフォームを置き、サブフォームのソースオブジェクトにクエリを参照しているデータシート形式のフォームを設定しています。 フォームに絞込み条件を選択するオプションボタン、表示するフィールドを選択するオプションボタンを配置し、 サブフォームへ表示するコマンドボタンを置いています。 この設定を選択した後コマンドボタンを押すと、クエリの中身を書き換えています。 で、実行すると、表示しない設定のフィールドには「Name?」という値が入ったフィールドがしっかり表示されてしまいます。 ソースオブジェクトにクエリ自体を設定すれば回避出来ますが、表示されたデータをダブルクリックするとその1レコードを表示する画面を更に開きたいと思っていますので、サブフォームにデータシート形式のフォームをセットするのがダブルクリックイベントを取得出来て良いかと思っています。 分かりにくい説明ですみません。 何か解決法を分かる方いらっしゃいましたら、お願いします。

  • クエリを使ったサブフォームが作れない

    ただいま、貸出システムを作っていたのですが、 物品と貸出者を分けて、フォームを作ろうと考えています。 両方テーブルで作った場合、サブフォーム表示はできるのですが、 物品のクエリを作った場合、サブフォームがうまくつくれません。 クエリを使って、サブフォームを作るには、どのようにしたら、 よろしいのでしょうか?

  • ACCESS2000で、サブフォームのデータを並べ替えする方法は?

    アクセス初心者+αの者です。 メインフォームを開いた時に、サブフォームにはメインとのリンク項目に該当するデータをクエリから抽出し、表示するようになっています(データによっては複数件あり)。 データ抽出は出来てますが、データの表示順がうまく出来ません。サブフォームのレコードソースSQL文にOrderBy句で指定してもダメでした。 メインフォームの並べ替えプロパティが怪しいと思ってるのですが、どのように記述すれば良いのでしょうか?(VBAでもOKです) 並び替えしたい項目は、サブフォーム内に持ってます。 情報の不足もあるかもしれませんが、よろしくお願いします。m(__)m

  • サブフォームにクエリの結果を表示するには・・・?

    ACCESSで勉強を始めたばかりの者です。 過去ログを検索してもわからなかったので教えてください。 ただ今検索用のテキストボックスを作り、コマンドボタンを押すとクエリが実行されるようになっております。 ここで、クエリの画面を出すのではなくサブフォームを作ってそこに表示させるようにしたいと思ってます。 表示させたい項目はすでに作ってはみたのですが、どうやったらコマンドボタンを押してそこに表示させるようにできるのかがわかりません。 もしかしたら大変未熟な質問をしているかもしれませんが、どうか教えてください。

  • Access2007でサブフォームを再クエリする

    ==環境== OS:Windows XP Professional Ver.2002 Service Pack 3 Access 2007 マクロを使って下記の操作をしようとしています。 以前Access2000を使っていて使用できたマクロが、Access2007では動かなくなってしまいました。 このマクロをどう修正したらいいのかわかりません。 [1]フォームAに作られた一覧表(テキストボックスを使って表示している) ----------------------------------- 品名------金額a-----金額b-----合計 製品1----5000-------6000@------11000 製品2----4000-------3000-------7000 ----------------------------------- [2]そのうち明細が見たい箇所のテキストボックスをクリック  ※この場合、製品1の金額bの明細を表示させたいので   `@マークが付いているテキストボックスをクリックしています。 [3]サブフォームを持つフォームBが開く [4]フォームBの検索条件 テキストボックスの『品名検索欄』に「製品1」を入力 オプショングループの『金額区分』の「b」がON [5]フォームBを再クエリ  ※フォーム上には再クエリボタンが設置されています。   サブフォームは「sub_form」という名前で配置されています。 ==2000でのマクロ== [3]から[5]について、以下のように作成しています。 (1)フォームを開く ・フォーム名:フォームB (2)値の代入 ・アイテム:[Forms]![フォームB]![品名検索欄] ・式:[Forms]![フォームA]![品名] (3)値の代入 ・アイテム:[Forms]![フォームB]![金額区分] ・式:2 (4)キー送信 ・キー操作:+{F9} ・待機:いいえ ==2007での状況== 2000で作成したマクロをそのまま使うと(4)が動かないようです。 フォームB上では品名と金額区分が入力されており、 サブフォームに表示されるはずのデータは空です。 フォームB上の「再クエリ」ボタンを押すとデータが表示されました。 試しに(4)キー送信を再クエリ(コントロール名:sub_form)に変えたところ 「カレントレコードには'sub_form'という名前のフィールドはありません。」 と表示されてしまいました。 このマクロをどう直したらいいでしょうか。 皆さん、よろしくお願いいたします。

  • ACCESS フォーム、クエリの最前面表示について

    ACCESS フォーム、クエリの最前面表示について ACCESS2007でメインフォーム、サブフォームを作成し、各フォームはポップアップを有効にしているので、実行すると最前面に表示されますが、サブフォームから開くクエリが最背面に表示されてしまい、いちいちフォームを最小化なり、閉じたりしています。 クエリを最前面に表示させるにはどうしたらいいのでしょうか?

  • ACCESSサブフォームにデータ反映されない

    よろしくお願いします。 Access2010を使っています。 メインフォームにあるテキストボックス2つに条件を入力し、 抽出したデータをサブフォームで表示させたいと思います。 ●メインフォーム名「フォーム1」 テキストボックス2つ「tex1」「tex2」 ●データ元クエリ「q1」 フィールド名「ID1」「ID2」「Name」 ●サブフォームSQL SELECT q1.Name FROM q1 WHERE (((q1.ID1) = Forms![フォーム1]!tex1) And ((q1.ID2) = Forms![フォーム1]!tex2))); フォームを開き、tex1とtex2に入力してもサブフォーム表示が変わりません。 サブフォームをデータシートで別に開くと、データ抽出できていることは確認できました。 サブフォームのコントロールソースへSQLを入力するだけでは、 メインフォーム内でのデータは反映されないんでしょうか??