- ベストアンサー
Access2003でメインレコードに複数画像を表示させる方法
CHRONOS_0の回答
- CHRONOS_0
- ベストアンサー率54% (457/838)
>[名簿ID][氏名][パス名1][パス名2][パス名3] >このように最大画像の枚数を限定して、1つのテーブルで考えてみます。 こういう手でいいのならテーブルじゃなく クロス集計クエリで何とか出来そうですね >「1件のメインレコードに対し、最大3枚の画像」にした場合の表示は可能でしょうか? 1レコードずつ表示するのであれば複数枚でも可能です
関連するQ&A
- Accessのサブフォームからフォームフィルタを使ってメインフォームも含めたレコードの抽出が出来ないのは何故でしょうか?
フォームフィルタを利用してサブフォームに入力されている値でレコードの抽出を行いたいのですが、うまくできません。 メインフォームが持っているレコード全てを持ってきます。 メインフォームに含まれているデータが100件なら、それ全てを表示してしまうということです。 私が抽出したいレコードは2件だけです。 メインフォームからフォームフィルタを利用して抽出すると正しい結果が得られます。 これはどうしてでしょうか? サブフォームへの設定が何か足りないのでしょうか? 親・子のフォームのテーブルは同一のものです。 カテゴリーで親と子にフォームを分けました。 親にはクエリはなくて、リレーションシップしたテーブル数種から直接フォームにひっぱってあります。 子は一つのテーブルからクエリを作って、そのクエリからフォームに引っ張っています。 Access2003です。 どなたかご教示いただきますようお願いいたします。
- 締切済み
- その他(データベース)
- フォーム内で複数のレコードを表示
アクセスで、表形式のサブフォーム(S_フォーム)を作成し、データを入力するとテーブル(T_明細)に追加されるようになっています。これをサブフォームのテキストボックスに入力するのではなく、別のクエリ(Q_クエリ)にあるデータを実行ボタンを押すことでサブフォームのテキストボックスに表示するようにし、テーブルのレコード(何件もある)を入力させていきたいと思っています。下記のようにコードをまず作成してみました。 Public Db As Database Public rs As Recordset Private Sub 実行_Click() Dim Temp_count As Integer Dim I As Integer Set Db = CurrentDb Set rs = Db.OpenRecordset("Q_クエリ", dbOpenDynaset) Temp_count = DCount("ID", "Q_クエリ") For I = 1 To Temp_count If IsNull(rs![氏名]) = False Then 氏名テキスト = rs![氏名] If IsNull(rs![住所]) = False Then 住所テキスト = rs![住所] rs.MoveNext Next I End Sub すると、ループした内容が全て同じテキストボックスに上書きされていき、結局1つのレコードしか追加できない状態です。入力操作でENTERしていくとサブフォーム内で複数のレコードが入力出来るように、出来ないでしょうか??良い記述があれば教えてください。お願い致します。
- 締切済み
- その他(プログラミング・開発)
- access サブフォームにリストを表示させたいが一件しかレコードが表示されない
現在、アクセス(ver 2000)でデータベースを作っています。 その中で、入力フォームの下に、 サブフォームを使って 入力データのリストを作成しようとしています。 サブフォームによるリスト表示は、サブフォーム作成ウィザードを使用し 入力フォームと同じテーブルを使用しています。 しかし、どうしてもレコードが一件しか表示されません。(左図)。 理想としては右図のような、複数レコードを表示をしたいのですが どうしてもやり方がわかりません。 どうすれば、右図のような複数レコードを表示できるのでしょうか。 アドバイスお願い致します。
- ベストアンサー
- オフィス系ソフト
- メインフォームとサブフォームのレコードを複製
(昨日同じ質問をあげましたがカテゴリが間違っていたのでこちらにあげなおしました) メインフォーム「MAIN」にサブフォーム「REN」を埋め込んでいます。 【メインフォームMAIN】 テーブル名:JIK ID:事件ID 【サブフォームREN】 テーブル名:REN ID:連絡先ID(・事件ID) ボタンをクリックすると、メインフォームで表示させているレコードを複製させたいです。 以下を参考に、そのとおり(のつもり)に作ってみたのですが (メインフォーム「MAIN」に「txtCopy事件ID」という名前のテキストボックスも作成しました) 「コマンドまたはアクション”追加貼り付け”は無効です。」 とエラーメッセージが出てしまいます。 どのように修正すればよいでしょうか? http://www.accessclub.jp/bbs3/0103/superbeg36719 … ちなみに追加クエリだけを実行すると 表示させているメインフォーム「MAIN」のレコードに、 サブフォーム「REN」のレコードが追加され、 サブフォーム「REN」のレコードが2倍になりました。 以下追加クエリとコードです。 【追加クエリ】 INSERT INTO REN ( 事件ID, 氏名, フリガナ, ・・・ ) SELECT [Forms]![MAIN]![事件ID] AS 式1, REN.氏名, REN.[フリガナ], REN.報告書, ・・・ FROM REN WHERE (((REN.事件ID)=[Forms]![MAIN]![txtCopy事件ID])); 【VBA】 Private Sub 明細コピー_Click() On Error GoTo Err_明細コピー_Click Me!txtCopy事件ID = Me!事件ID DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70 DoCmd.DoMenuItem acFormBar, acEditMenu, 2, , acMenuVer70 DoCmd.DoMenuItem acFormBar, acEditMenu, 5, , acMenuVer70 'Paste Append Dim stDocName As String DoCmd.SetWarnings False ' システムメッセージ非表示 stDocName = "追加クエリ" DoCmd.OpenQuery stDocName, acNormal, acEdit DoCmd.SetWarnings True ' システムメッセージ表示 ' サブフォーム再クエリ Me!REN.Requery Exit_明細コピー_Click: Exit Sub Err_明細コピー_Click: MsgBox Err.Description Resume Exit_明細コピー_Click End Sub よろしくお願いいたします!
- ベストアンサー
- オフィス系ソフト
- ACCESS──メインフォームでサブフォームのレコード件数をカウントしたい
日付/品番/出庫数のフィールドで構成された「明細テーブル」があります。 「日付」フィールドからなるメインフォーム、「品番/出庫数」からなるサブフォームをつくり、メインフォームのサブフォームコントロールのレコードソースを「サブフォーム」に指定しました。 日付を入れるとその日の出庫明細がサブフォーム上に表示されるのですが、このレコード件数をメインフォーム上のコントロールで表示したいのです。 サブフォームのヘッダにテキストボックスコントロールを作り「=Count([品番])」としてやれば、「サブフォーム上での」件数表示は出来るのですが、同じ式をメインフォーム上のコントロールに記述すると、「全レコードの件数」が表示されてしまいます(当たり前ですが) そこで、「=Count([埋め込み].Form![品番])」とやってみました。ここで「埋め込み」とはメインフォーム上のサブフォームコントロールの名前です。 結果は「#Error」となってしまいます。Count関数だけでなくSum関数などでも同様の結果となります。 はっきりいって「サブフォームのヘッダに表示させればいいじゃないか」というところなのですが、「式ビルダ」ではサブフォームのコントロール名も容易に参照できるようになっており、なにか方法があるのではないか、初歩的なところでつまずいていないか、と思案している次第です。 なにかアドバイスいただけたら幸いです。
- ベストアンサー
- オフィス系ソフト
- サブフォームのレコードを1件のみに限定することはできますか?
メインフォームの中にサブフォームを作りました。 メインフォームは単票形式で、サブフォームは表形式です。 (1)メインフォームのレコード1件につき、サブフォームのレコードは1件です。 今のままだとサブフォームが何件でも入力できてしまう仕組みなので、入力者が戸惑わないように、1件しかレコードを入力できないような仕組み(表示)に変えたいのです。 このようなことは可能なのでしょうか? (2)メインフォームの中にサブフォームを作ることにしたのは、依頼者から「この項目を増やしてほしい」と言われるのが一つずつで、その度にメインフォームに関連するエクセルなどのマクロの式を変えなければならず、手間がかかります。 そこで依頼者から言われる項目は○○の実績という一つのカテゴリーに限ったことなので、サブフォームにしてエクセルのマクロとは関連づかないようにすればメインフォームはいじらずに済み手間が省けるのではないかと思ったからですが、この方法は違っていますか? どなたか詳しい方がいらっしゃいましたらご教示いただけないでしょうか? お手数をおかけして申し訳ありませんがよろしくお願いいたします。
- 締切済み
- その他(データベース)
- フォーム内のテキストボックスに複数レコードを表示
いつも大変お世話なっております。Accessを始めて3週間の初心者です。 今、社員の在籍中の職級推移を残すための社員明細フォームを作成しています。 社員数数百名。 フォーム名:社員明細 テーブル名:TBL_職級期間一覧 テーブルには 以下のようなレコードが並んでいます。 IDはオートナンバー型を振っています。 年度が替わって、職級が変化すればレコードが追加されます。 (ID 586のように001234 さんのレコードが追加) ID 社員No 開始 終了 職級名 1 001234 2004/04/01 2008/03/31 S3 2 001234 2008/04/01 2012/03/31 S2 3 001234 2012/04/01 2015/03/31 S1 4 005678 1998/04/01 2003/03/31 T6 5 005678 2003/04/01 2005/03/31 T5 6 005678 2005/04/01 2013/03/31 T4 7 005678 2013/04/01 2016/03/31 T3 ・ ・ ・ 586 001234 2015/04/01 2016/03/31 K5 これらを添付写真のようにフォームに表示させる方法がわかりません。 IDを振ったのは社員Noで絞り込み、昇順・降順で表示させる順番を 推移の新しい順、古い順に可変させられるのでは・・?と思ったので IDフィールドを付けました。 いろいろ検索し=DLOOKUPを使ったりと試してみましたが、よくわかり ませんでした。 何卒お力添えをお願い致します。
- ベストアンサー
- その他MS Office製品
- Access メインフォーム サブフォームにて
お世話になります。 Accessにて メインフォームにコマンドボタンを置いて、クリックするとサブフォームのレコードが 次に行くようにしたいのですが、 コマンドボタン クリック Forms![メインフォーム]![サブフォーム名].Form!フィールド名.SetFocus DoCmd.GoToRecord , , acNext メインフォームとサブフォームのレコードが次に行ってしまいます。 サブフォームだけ次のレコードに行くには、どのようにすれば良いのでしょうか。 分かる方教えて下さい。 宜しくお願いします。
- ベストアンサー
- オフィス系ソフト
- Accessのメインフォームとサブフォームの使い方について
Accessにてメインフォーム(単票形式)+サブフォーム(帳票形式)を使って進捗管理をするデータベースを作っており、新規にメインフォームで入力し、サブフォームで入力したデータを表示させてます。 サブフォームで更新したいレコードをクリックしたときにメインフォームでそのレコードを表示させるにはどのようにすればよろしいのでしょうか?
- ベストアンサー
- その他(データベース)
- Access2000メインサブフォームでのレコード移動
Access2000でデータベースを作っている中で、メイン/サブフォームを使用しています。 メインフォームで次レコードへ移動しようとすると、レコードNOは移動しているのですが、データ内容が変わりません。 私の予想なのですがサブフォームにあるレコードの数だけ、(メインフォームの)同一レコードの内容が表示されているようです。 ・次レコードへの移動はフォーム一番下の、デフォルトでついてるレコード移動のボタンを押しました。 ・(メインフォ-ムの)テーブルにはKeyを設定してあり、同じデータは存在していません。 以上ですが、不明な点がありましたらお知らせください。 もしお分かりになる方がおられたらお教えください。よろしくお願いいたします。
- 締切済み
- オフィス系ソフト
お礼
お礼が遅くなりました。 クロス集計で四苦八苦中です。 良いヒントをありがとうございました。