最新トピック
8
22 日前
Hatena様にご質問 22 日前
1
2 ヶ月前
排他制御 2 ヶ月前
6
5 ヶ月前
モジュールでカレントフォームのコントロールを使うには 5 ヶ月前
7
6 ヶ月前
日付のテキストボックスからフォームが開けません 6 ヶ月前
9
6 ヶ月前
レポートにおける数値の間隔を広げる方法 6 ヶ月前
12
6 ヶ月前
リストボックスから複数選択しそれをテーブルに格納したい 6 ヶ月前
タグリスト
Markdown テーブル生成
Accessのテーブルやクエリのデータを貼り付ける場合は下記で、Markdown書式のテーブルに変換して貼り付けてください。
コントロール(コントロールソース)の理解があやふやな感じですねぇ
コントロールはコントロールソースの設定によって3種類の動作をします
1.コントロールソースにフォームのレコードソースのフィールドを指定する
指定したレコードソースのフィールドそのものにリンクされます。
現在のレコードの(指定したフィールドの)値が表示され、このコントロールを更新するとデータが書き換わります。
(フィールドがクエリの計算式などの場合、編集不可だったりもします)
2.コントロールソースに計算式を指定する
計算式に従った結果が表示されます。
編集不可です。このコントロールが直接データを書き換えることはありません。
3.コントロールソースに非連結を指定する
フォーム上で任意で編集ができるコントロールです。
このコントロールが直接データを書き換えることはありません。
今回の例のように、表示したい個人IDを入力したり、検索用のキーワードを入力するテキストボックスを設置するときに使います。
非連結のコントロールは、ユーザーが一時的に使いたいデータを入力するためのコントロールとなります。
また、上記はコントロールの値(value)に関する話で、いろいろな制御にかかわる各種プロパティは、別物です
これの第4引数(
"個人ID=" & Me.PF_CMB_個人ID.Value)はフォームのFilterプロパティに値を設定する指定です。これ自体は何かデータを書き換えるようなことはしません。(コントロールに値を設定するようなこともありません)
サブフォームのデータを絞り込むときには
としました。今回はフォームが別になるので、同様に考えるなら
とすることができます。
ただし、フォームを新たに開くなら、hatenaさん提示のように同時に設定できるので
とできます。
同じことをしているとわかれば、個人IDを直接変更しているものではないとわかると思います。
各コントロールは、処理毎に、冒頭のコントロールのルールに従って内容を再表示します。
レコードの絞り込みの結果、現在のレコードが変更になれば、変更後のレコードの値を表示しなおします。
Excel的に言えば、見ている行が変わったというだけでデータそのものが変わったわけではありません。行が変わったので、その行の値をそれぞれ表示しなおしているだけです。