• 締切済み

フォームで、任意に指定したデータに該当するレコードを表示したい

フォームで、日付、商品名、評価というフィールドがあるとします。 日付(1月1日~12月31日)と商品名は、既にデータが入力されていて、後から評価の入力をまとめてしようとする場合、 「昨日は1月1日~4月20日までの評価の入力をしたから、今日は続きの4月21日から入力をしよう。」とします。その場合、4月21日のレコードまで、順にレコード送って行って、表示させています。 入力を開始するとき、4月21日のレコードを即座に表示させるにはどうしたらよいのでしょうか?

みんなの回答

noname#182251
noname#182251
回答No.4

視点を若干変えて「評価済み」と「未評価」で切り分けては? 必要であればestimated(名前は適当)フィールド(Boolean)などを作成し、評価をした時点で自動的にTrueに切替える。 評価時にはestimated=Falseだけを表示する

noname#49904
noname#49904
回答No.3

tihitです。 パラメータークエリーで日付フォールドの抽出条件に  >=[日付を入力] と入れたら、入力した日付を含む以降の分が一覧表示されると思いますが、テストしてないので自信ないです。  私は幼稚園・保育園児の管理をしていますが、○月生まれの一覧を出すため月を入力すると入力された月の生まれ児童の一覧表示を作っています。  卒園した児童(就学年齢に達した児童を別ファイルにするため)は抽出しないためいろいろ使い分けしています。  無数の抽出・検索がたくさんあるのでクエリーだけでも100件以上ありますよ。  ボランティアの方達がPCを操作するためほとんどコマンドボタン操作で表示するようにしています。  表示は一覧表示や単票形式で詳細表示させたりしています。児童数約20000人です。  就学児童と就学前児童の見定めには就学前の単票表示は目立つアニメが表示されるなどの工夫もしていますよ。  頑張りましょう。

  • keikan
  • ベストアンサー率42% (75/176)
回答No.2

日にちが特定できて入力することが可能であるならば、 フォーム上で右クリックしフォームフィルターを選択します。 フィルターの日付項目で >=4月21日 とでも入力して フォームフィルターの実行をしてください。 またはマクロを組んで、 docmd.FindRecord 日付=#2004年4月21日# なんてのも有りです。 実際の日付の代わりにフォーム上の非連結なテキストボックス名を作成し、テキストの更新後処理かボタンを作成してのクリック処理で割り当ててもいいと思います。

noname#49904
noname#49904
回答No.1

選択クエリーを作成、全フィールドを表示させます。  日付フィールドで抽出条件に「日付を入力」と[]でくくります。  クエリーを表示すると日付を入力というパラメーターが出ますので日付を入力します。 (2004/8/18などと入れますが今年の日付は8/18でOK)  日付のデータだけ表示されます。  フォームのコントロールソースは、このクエリーを指定すればご希望がかなえられます。

akahige
質問者

補足

できれば、8/18だけではなく、まず8/18のレコード(単表フォームで)を表示して8/19、8/20のレコードを順に送りながら入力することはできるんでしょうか? 意味が伝わりますでしょうか? 特定のレコードにジャンプするという表現の方がわかりやすいですか???

関連するQ&A

  • フォームに表示したいんですが・・・

    複数の人数の作業時間を入力するフォームを作成しました。 誤って入力したものをフォーム上で訂正したいので非連結のテキストボックスを 2つ作成しクエリーの「作業日」と「社員番号」のフィールドの抽出条件をforms![フォーム名]![テキストボックス名]としました。 フォームの2つのテキストボックスに「日付」と「社員番号」を入力すると1レコードが表示されました。 間違いを探すのに1日1日入力するのは手間なので、例えばAさんの1年分の レコードから1月1日から1月31までの31レコードをフォームに表示させるにはどうすればよいのでしょうか? いろいろやってみたんですがうまく出来ませんでした。 うまく説明できませんがよろしくお願いいたします。

  • アクセスのテーブルのレコードをひとつのフォームにすべて表示ししたい

    アクセス2002を使っています。 ひとつのテーブルに登録しているレコードの値(日付順のフィールドにより数値を入力たレコードです)をひとつの単票形式のフォームにすべて表示するようにしたいのですが、できますか? よろしくお願いします。

  • Accessで入力したキーに一致するレコードをフォームに表示

    テーブルのフィールド名に 支給日、支給番号、業者名、商品名、型番、種類、支給数、単価、があり フォームに 種類、業者名 サブフォームに 支給日、支給番号、型番、商品名、出庫数、単価あります フォームの種類、業者名を入力したあと 一致するレコードをサブフォームに表示させたいです どのようにVBAを書けばいいかご教授ください 宜しくお願い致します。

  • 該当レコードがない場合その旨表示させたい

    Access2000を使用しています。 フォーム上のテキストボックスに日付を入力してボタンを押下すると、入力された日付に該当するレコードを、ソースとなるテーブルから選択クエリで抽出し、それをもとにレポート出力するようになっています。 入力された日付のレコードがソースとなるテーブルにない場合、「該当の日付のレコードはありません」とメッセージを出すようにしたいのですが、VBAでどのようにすればいいでしょうか? IsNull関数を用いて、If~Then~Elseを使おうと考えたのですが、この時テキストボックスに入力された日付で、ソーステーブルのレコードを絞り込む方法がわかりません。

  • 指定した月のデータを取り出したい

    指定した月のデータを取り出したい Excel2003を使っています。Sheet1に2つの表があります。 1つの表は、商品データ、2つ目の表は、売上データです。 商品データには、番号,売上日,商品名,数量等が入っています。 売上日には、月ごとではなく、売り上げた日にちが入っています。 例えば、A1に月を入力すると、売上データに該当する月のデータを 表示できるようにしたいのです。 例えば、売上データには、5月分の日付や6月分の日付や7月分の日付が 入っています。 A1に、6月と入力すると、売上データの表の1行目から順次6月分のデータを 表示されるようにしたいのです。6月分のデータは、複数行あります。 A1に、6月と入力すると6月のデータをすべてを表示できるようにしたいのです。 売上データの項目は、商品データと同じ番号,売上日,商品名,数量等となっています。 ピボットテーブルや、マクロでやったほうがよいのかもしれないのですが、 あまり自信がないので、関数で出来ないものかと思っています。 関数なら、少しぐらいなら知っているので。頑張って勉強します。 よろしくお願いいたします。

  • アクセス;同じレコード内のデータを数字で指定して

    あるクエリ上の、同一のレコードの中にある4つのデータ中から、一つを指定して、表示するクエリを作りたいのですが、どのようにすればよいのでしょうか。 現在、以下のようなフィールドです。 「指定個人名,個人名(1),個人名(2),個人名(3),個人名(4)」 「指定個人名」には半角数字の1から4までが任意で入ります。 「個人名(1)~(4)」のうちどれかを、「指定個人名」の数字で指定するとします。 「個人名(1)~(4)」のうち指定されたデータが、同一レコード内の新しいフィールドに表示されるようにしたいです。 しかしあるレコード内のデータを、同一レコード内の別のデータで指定するというやり方が思いつきません。 どうやって「指定個人名」の数字1~4を、「個人名(1)~(4)」までのデータと関連付けて、新しいフィールドに呼び出せば良いのでしょうか。 クエリ解説の本をひっくり返しましたが、どうも一般的な方法ではないようで、やり方が見つかりません。 初心者ゆえに質問の内容に不備があるかもしれませんが、訂正・補足いたしますので、ヒントだけでも結構です。 どうぞ教えてください。

  • [Access]検索データの表示 など

    (1)テーブルがA、Bと2つあります。 Aのフィールドは店舗ID、店舗名、支店名、店舗住所、店舗電話番号です。 Bは案件ID、店舗名、支店名、店舗住所、店舗電話番号、それ以外に20ほどフィールドがあります。 Bをフォームを使って入力するのですが、Bのフォームの電話番号欄に電話番号を入力し、コマンドボタンを押すとAの該当する店舗データがBのそのレコードの各対応するフィールドに反映されるようにしたいのですが、どのようにすればいいかわかりません。 また、該当する電話番号がなかった場合は該当なしのメッセージを表示させたいです。 (2)Bのフォームで新規レコードを作成したときに、自動で日付フィールドに現在の日付を、時刻フィールドに現在の時刻を入れたいです。 どなたか教えてください。

  • accessで該当するレコードがない場合

    フォームヘッダー上で、(指定月日)の名前をつけてあるテキストボックスに、(月日)を入力し、コマンドボタンの(月日抽出)をクリックして、該当するデータがあれば、フォーム詳細で該当するレコードが抽出されるようになっています。 また、(月日)を入力せずに月日抽出ボタンをクリックすると「日付が未入力です」までのメッセージを出すことはできます。該当するレコードがない場合「該当するデーターはありません」のメッセージを出すには、下記のVBAをどうすればいいのでしょうか? dcountを使えばいいらしいのですが?わかりません。 ちなみにテーブル名は「実施T」です。よろしくお願いします。 Private Sub 月日抽出_Click() On Error GoTo errmsg Me.Filter = "月日=#" & Format(指定月日, "yyyy/mm/dd") & "#" Me.FilterOn = True Exit Sub errmsg: MsgBox "日付が未入力です" End Sub

  • Access2007 サブフォームの新規レコードをすぐにフォームに表示させる方法

    サブフォーム上で適当なレコード(IDと商品名)を選択して、そのレコードにある入力ボタンを押すと、フォームのコンボボックス上にその商品名が出るようなフォームがあります。 すでに入力済みのIDと商品名は表示されます。 ところが、サブフォーム上でIDと商品名を新規入力して入力ボタンを押すと、フォームのコンボボックスは空白となり、商品データが表示されません。 しかし、一旦フォームを閉じて開くと、データは表示されています。 IDと商品名を新規入力して、そのままフォームのコンボボックスに反映させたいと思います。 入力ボタンはこのようにやってみました。 Private Sub 入力_Click() DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70 Forms!フォーム!ID = Me.ID End Sub または、 Private Sub 入力_Click() DoCmd.RunCommand acCmdSaveRecord Forms!フォーム!ID = Me.ID End Sub ご教授いただければ幸いです。よろしくお願いいたします。

  • Accessでフォーム上に 直前の データを表示させるには

    Accessでフォーム上で、データを入力するのに、一つ前のレコードの データを基参考に 次のデータを入力したいと思います。一つ前のレコードを そのフォーム上に表示させるには どうすれば良いのでしょうか? あるレコードのすべてのフィールドの値を表示させたいのです。