
No.1ベストアンサー
- 回答日時:
添付画像のように単一のフォームで横に表示するのは無理(左は帳票またはデータシート、右は単票です。
詳細エリアに混在はできない。)だと思うのですが、上下レイアウトでよく、今ターゲットがあるレコードの詳細表示でよい というのであれば、すぐに出来ます。方法は、
1.該当のフォームの規定のビューを「帳票フォーム」にします。
2.備考と内容フィールドをフォームのフッターなり、ヘッダーに移動します。
それ以外のフィールドは「詳細」に置きます。
完成です。
これではよろしくない、クリックして表示し、次をクリックするまでそれを保持したいというのであれば、単票形式の別フォームを準備する方法になるかと思います。
その程度なら、VBAがわからなくても、マクロでナントカなりそうですが。
流れは「閉じる(別フォームを。前の分が開いているかもしれないので)」「フォームを開く(Where条件付)」「元フォームをアクティブにする」だけ。
No.2
- 回答日時:
> このような動作をさせるプログラムを、VBAで作れますか?
もしも幾つかの前提条件を掛けてもよいようでしたら、
プログラムは(殆ど)使用せずに、ご希望の動作をさせることが
できるかと思います。
つまり、
1)赤枠で囲んだ部分の表示には、「サブフォーム」ではなく
(複数列を表示させる)「リストボックス」を使用
2)青枠で囲んだ部分の表示には「サブフォーム」を使用し、
サブフォームのリンク親フィールドとして、上記「1」の
リストボックスを使用
とすることでVBA/マクロを一切使用せずに、リストボックスの
クリックで右側の表示内容の切替が可能になります。
※こちらの環境(Win XP&Access2003)で確認済。
但し、環境によっては(?)、リストボックスの更新後イベント
での、サブフォームの「再クエリ(Requery)」だけは、必要に
なるかもしれません(汗)
必要となる前提条件は、
・赤枠部分は、別のフォームで編集
(この画面では追加/編集/削除は不可)
・赤枠部分の各列の列幅は、ユーザーは変更不可
(フォームのデザイン時に設定した幅で固定)
となります。
上記前提でよければ、以下の手順で対応できます:
1)当該テーブルをレコードソースとするフォームを新規作成
し、「内容」「備考」等を表示するテキストボックスを設置
※青枠内のサブフォーム用
2)新規フォームをデザインビューで開く
(こちらはレコードソースは指定不要)
3)リストボックスを追加し、プロパティシートで以下を設定:
○『書式』タブ
・『列数』=「3」 (No.、年月日、件名の3列)
・『列幅』=適宜調整(例えば「1cm;2cm;5cm」等)
※各列の幅を「;」(セミコロン)で区切って指定。
○『データ』タブ
・『値集合ソース』=上記3フィールドのみを表示する
クエリを予め作成しておき、ここにその名前を指定
(または、プロパティシートの上記欄にカーソルを
置いた時に右端に表示される『ビルダ』を使用
して、ここでクエリ(SQL文)を作成してもOk)
・『連結列』=「1」 (「No.」フィールドが主キーなど、
レコードの特定できるデータであると推測)
4)サブフォームを追加し、プロパティシートで以下を設定:
○『データ』タブ
・『ソースオブジェクト』=「1」で作成したフォームの名前
・『リンク子フィールド』=「No.」
・『リンク親フィールド』=「2」で作成したリストボックスの
名前
※親フォームのレコードソースが空白の場合、リンク親
フィールド/リンク子フィールドで『ビルダ』を使用すると、
「非連結フォームにリンクを作成することはできません」
とのエラーが表示されますが、ビルダを使用せずに手で
直接入力してやればOkです。
5)フォームを保存して閉じる
・・・以上です。
なお、リストボックスで値を選択してもサブフォームの内容が
切り替わらない場合は、
1)リストボックスのプロパティシートで、『イベント』タブを選択
し、『更新後処理』にカーソルを移動
2)右端に表示される『ビルダ』(「...」のボタン)をクリック
3)『ビルダの選択』ダイアログが開くので、「コードビルダ」を
選択して『OK』ボタンをクリック
4)Visual Basic Editor(VBE)画面が開くので、以下を入力:
(先頭と末尾の計2行は自動で入力されるので、中央の
1行のみ手入力すればOk)
Private Sub リストボックス1_AfterUpdate()
(サブフォーム名).Requery
End Sub
※「(サブフォーム名)」には、実際のサブフォームの名前
(ソースオブジェクトではなく、プロパティシートの『その他』
タブの『名前』に表示される方)を入力。
(前後の「( )」は無用。「Requery」の前に「.」(ピリオド)が
必要なので注意)
と、1行だけVBAを追加すれば、切り替わるようになります。
(VBAなしでサブフォームの表示が切り替わるなら不要です)
【参考】
赤枠部分もデータの更新が必要な場合は、そちらもサブフォームに
した上で、その『レコード移動時』イベントを使用してやれば
(→ここにはVBAが必要)、同様に対応できます。
(リストボックスの代わりに非表示のテキストボックスを設置し、
リンク親フィールドとします。
赤枠側のレコード移動時にその「No.」をここに記録し、それと
同時に、青枠側のサブフォームを、上記の通り再クエリ)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- Access(アクセス) AccessVBAで降順にするテーブル作成クエリを使用して作成したテーブルを削除し同一のテーブル作成 1 2023/01/06 11:17
- Excel(エクセル) 【vba】日付の形式が勝手に変わってしまう。 1 2022/09/29 10:54
- Access(アクセス) Accessで予定表を作成しようとしてます。 テーブル フィールド名 連番 オートナンバー型 年月日 2 2023/07/23 11:40
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/04/21 13:46
- Windows 10 Windows PC 「スタート」の表示 1 2022/05/14 14:27
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- Access(アクセス) Accessでセレクタをダブルクリックで別フォームで詳細表示 3 2022/12/20 10:36
- Access(アクセス) Access2016でフォーム内にExcelの複数シートを 表示させるイメージで複数テーブルの デー 1 2022/11/25 15:30
このQ&Aを見た人はこんなQ&Aも見ています
-
今年はじめたいことは?
今年はこれをはじめたい!ということを教えてください!
-
おすすめの美術館・博物館、教えてください!
美術館・博物館が大好きです。みなさんのおすすめをぜひお聞きしたいです。
-
もし10億円当たったら何に使いますか?
みなさんの10億円プランが知りたいです!
-
あなたなりのストレス発散方法を教えてください!
自分なりのストレス発散方法はありますか?
-
思い出すきっかけは 音楽?におい?景色?
記憶をふと思い出すきっかけは 音楽、におい、景色 どれですか?
-
Access サブフォームでの選択行の取得
その他(データベース)
-
ACCESSの表形式で、レコードをクリック→詳細を表示させたい
その他(データベース)
-
ACCESS フォームからサブフォームのデータを更新・入力したい
Access(アクセス)
-
-
4
新規レコード行を非表示にしたい
Access(アクセス)
-
5
ACCESSのフォームからデータの追加ができない
その他(データベース)
-
6
親・子リンクフィールドの設定は、どうすればよいのでしょうか。
その他(Microsoft Office)
-
7
ACCESS 複数のフォームから同一テーブル参照
Access(アクセス)
-
8
Accessのフォームにて、詳細行のボタンを行の内容により、表示/非表
その他(Microsoft Office)
-
9
フォームを開くときに、コンボボックスの値を選択(アクセスVBA)
Visual Basic(VBA)
-
10
ACCESSで条件によってフォーム上のフィールドの色を変更
Access(アクセス)
-
11
[Access]帳票フォームにて連続する非連結コントロールに個々の値を入れるには
Access(アクセス)
-
12
Access コンボボックスの値をクリアしたい。
PowerPoint(パワーポイント)
-
13
Accessの画面更新を一時的に停止する方法。
その他(データベース)
-
14
Accessのレポート上のテキストボックス値を設定したい
その他(データベース)
-
15
access サブフォームにリストを表示させたいが一件しかレコードが表示されない
Access(アクセス)
-
16
ACCESSで値を代入できないとは?
Visual Basic(VBA)
-
17
レコードをダブルクリックすると別フォームでひらく
Access(アクセス)
-
18
Accessで、フォームからフォームへ値を引き継ぐやり方
Access(アクセス)
-
19
ACCESS フォームをそのまま印刷について
その他(データベース)
-
20
ACCESSでフォームを使って、テーブルを参照、データ入力、データ更新をしたいのです
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Access サブフォームでの選択行...
-
ACCSESS2013VBA フォームのレコ...
-
access サブフォームにリストを...
-
(ACCESS)条件に応じて、テキ...
-
Access2000、これはいったい・...
-
AccessのFormのみをスクリーン...
-
Access 複数フォームを...
-
Access VBA acCmdSelectRec...
-
Accessで、サブフォームのある...
-
ACCESSでサブフォームの...
-
AccessのDoCmd.ApplyFilterの使...
-
保存されない理由は?accessvba
-
サブフォームのデータを保存す...
-
Accessでのフォーム表示がうま...
-
Accessのサブフォーム上で常に...
-
Accessで、一覧からクリックし...
-
サブフォームの切り替え方を教...
-
[Access]複数のサブフォームで1...
-
ACCESS サブフォームのフィール...
-
ACCESSのフォームのサイズ、サ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Access サブフォームでの選択行...
-
Access 複数フォームを...
-
Access2000、これはいったい・...
-
ACCSESS2013VBA フォームのレコ...
-
(ACCESS)条件に応じて、テキ...
-
access サブフォームにリストを...
-
Accessで、一覧からクリックし...
-
googleフォームでインストール...
-
Access2000 サブフォームのReco...
-
サブフォームでのダブルクリッ...
-
サブフォームが見えなくなる。
-
2回目に画面のレコードセットの...
-
Accessのサブフォームから値を...
-
サブフォームでフィルタしたデ...
-
Accessでサブフォームの中の並...
-
初心者です。accessで請求書を...
-
アクセスでサブフォームのレコ...
-
サブフォームのデータを保存す...
-
レコードセットで得た結果をサ...
-
Accessのサブフォーム内で連続...
おすすめ情報