<Access コントロールソースを共通にする(細工する)>
どうも、三流プログラマーのKen3です。 今回は、 Accessのフォーム、テーブルとつなげたコントロールソースについて、 すこし書いて見たいと思います。 何かの参考となれば、幸いです。/* * 1.今回のキッカケ */
メールで下記の質問をもらいました。 --------------- >>えっ、そんな手数をかけなくても、 >>コントロールソースを同一にしろって? >>^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ >> >>ギク、、、言われてみれば、、、 > >これの意味がよくわからないのです。 > --------------- そんな質問をいただいたので、 Accessのフォームでコントロールソースを同一にするメリット について、少し書きたいと思います。/* * 2.コントロールソースって? */
同一にする前に、コントロールソースって? Accessでテーブルやクエリーを元にしたフォームを作り、 テキストボックスのコントロールソースの欄に、 テーブルのフィールド名を入れておくと、 テキストボックスとフィールドが連結してくれて、 特に意識しないで登録画面や更新画面作れるんですよ。 はぁ?なにほざいているのか、よくわからん。 えっと、 テーブル名:顧客 ^^^^^^^^^^^^^^^ 顧客番号 point 住所 氏名 記号 1 120 名古屋 ドラキチ あ 2 15 北海道 どさんこ い 3 20 東京 ヤクルト う 4 5 神奈川 横浜 え 5 20 福岡 ダイエー お ってテーブルから検索フォームを作成したときに、 テキストボックスをtxt氏名ってテキストボックスを作成。 txt氏名のプロパティにコントロールソースがあるので、 そこにテーブルで使用している=[氏名]を設定します。 まぁ、普段そんなに意識しないで使っていると思います。/* * 3.詳細エリアとフッダーエリアで同じコントロールソースを参照 */
Access97 フォームフッター http://www.ken3.org/backno/hosoku/e006/index.html で書いてたネタなんだけど、 一覧形式のフォームがあります。 AAAA BBBB 備考あああ AAAA BBBB 備考あああ AAAA BBBB 備考あああ なんて、一覧表示のフォームが在った時に、 一覧表示なので備考欄を大きく表示できない、 カーソルを合わせてスクロールさせれば全体が見れる。 こんな時に、 フォームのヘッダー・フッダーにテキストボックスを1つ作り コントロールソースを共通の備考にします。 すると、詳細のカレントレコードの備考が、 新たにヘッダーフッターに設置したテキストボックスに表示されます。 これは、詳細のワクの短いテキストボックス と ヘッダー・フッターに設置したワクの大きいテキストボックス、 どちらもおなじテーブル(レコードの)データを参照しているからです。 下記の画像付きページを見てください。 http://www.ken3.org/backno/hosoku/e006/index.html が解説画面 http://www.ken3.org/backno/hosoku/e006/006.lzh に、Access97 0201.mdb が入っています、 ヘタな説明聞くより、動作を見てみるのが一番速いかも。/* * 4.違うタイプのコントロールで同じソースを参照する */
上記の例は、 サイズの違うテキストボックスをフッターと詳細に配置した使用例でした。 では、違うタイプのコントロールで、同じコントロールソースを指定したら? どうなるでしょう? Access97 コントロールソース、チョットした使用法 http://www.ken3.org/backno/hosoku/e007/index.html で、 テキストボックスとオプショングループのコントロールソースを一緒にして、 オプションボタンでも選択できるし、 テキストボックスに数字を直接入れてもOK そんな感じのことを書いてます。 下記のようなアンケートハガキの入力システムを作りたいと思います。 名前 XXXXXX 性別 男・女 メールアドレス xxx@xxxx メルマガについて質問です 質問1.読みやすさについて 1:悪い 2:普通 3:読みやすい 質問2.内容について 1:簡単 2:普通 3:難しい、、 みたいなハガキの入力を作成します。 入力レイアウト(フォーム)を作成します。 ここは、普通に、ハガキの入力順で、 名前 XXXXXX 性別 □男 □女 メールアドレス xx@xxxx メルマガについて質問です 質問1.読みやすさについて □悪い □普通 □読みやすい 質問2.内容について □簡単 □普通 □難しい、、 と作ります。 まぁ、普通かなぁ。 だと、面白くないので、□チェックボックスをレするだけじゃなく、 テキストボックスを作成して、数値入力とチェック、両方きかせたいと思います。 質問1.読みやすさについて [2] ←数値入力 □1.悪い レ2.普通 □3.読みやすい ←オプショングループ といった、処理を作りたい時、 *話、とても長くなりますが、お客さんで、 マウス操作なんてかったるい、キーボードのみで入力できないか? といった、DOS世代の人や、本気で入力の速さを追及している人、 多いです。※連続入力ならマウスクリックよりキーボードが速いですよね。 数値入力用のテキストボックスのコントロールソースと、 オプショングループのコントロールソースを同一にしておくと、 どちらを選択・入力してもいいように、処理できます テキストボックスに2を入れてもいいし(入れるとオプションも変化します) マウスでクリックしてもいいし(クリック後テキストボックスが変化します) まぁ、一度、試してみてください。 http://www.ken3.org/backno/hosoku/e007/index.html が解説画面 http://www.ken3.org/backno/hosoku/e007/007.lzh に、Access97 0204.mdb が入っています、 ヘタな説明聞くより、動作を見てみるのが一番速いかも。/* * 5.終わりの挨拶 */
>>えっ、そんな手数をかけなくても、 >>コントロールソースを同一にしろって? >>^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ カレンダーコントロールのコントロールソースを同一にすれば、 前回みたいに、イベントで代入しなくてすむので、 そのほうが簡単ですと言いたかっただけでした。 ※同一フォーム内で、 カレンダーコントロールとテキストボックスを連動させるときは、 コントロールソースを同一にするのが簡単で正解です。 今回は、昔のメルマガ紹介を兼ねて、 コントロールソースを同一にした使用方法の紹介でした。 拾い読みして、 1つでも何かの参考となれば幸いです。 Excel/Access大好き、三流プログラマーKen3でした。
ここまで、読んでいただきどうもです。ここから下は、三流君のホームページの紹介・案内です
目的の情報が見つかったか?少々心配しつつ、、、
気になったジャンル↓を選択してください。 人気記事(来場者が多いTOP3): Excel関係: Access関係: その他:VBAの共通関数やテキストファイルの操作など 開発時の操作: [F1を押してHELPを見る]/ [Debug.Print と イミディエイトウインドウ]/ [実行時エラーでデバッグ]/ [ウォッチ式とSTOP]/ [参照設定を行う] 仕様書(設計書?) XXXX書類: [基本設計書や要求仕様書]/ [テスト仕様書 テストデータ]/ [バグ票]/ [関数仕様書]/ [流れは 入力・処理・出力] ※↑文章の味付けが変わっていて、お口に合うかわかりませんが。。。 |
Blogとリンク:[三流君の作業日記]/
[VBAやASPのサンプルコード]/
広告-[通販人気商品の足跡]