質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

Q&A

解決済

2回答

4236閲覧

Accessコントロールソースの名前について

cerophan

総合スコア15

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

0グッド

0クリップ

投稿2020/06/15 03:55

別の問題で質問中ですが、別の疑問が湧いてきたので質問します。
コントロールソースには名前をつけたほうが良いようなのですが、(txt顧客名など)テーブルの段階でつけたほうがよいのでしょうか。
そうだとしたらインポートするとき不一致が出てくるのですが、インポートについて、VBAでカバーすべきなのでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ウイザードでフォームを作成すると、コントロール名とレコードソース中の名前と同じ命名がされます。
レコードソースがテーブルの項目名と同じだと同じ名前になります。

修飾を付ければ(Me.コントロール名 等)回避できますが、コントロールには、txt_(テキストボックス)やcmb_(コンボボックス)などの判別しやすいプレフィックス等を付けていた方が効率良いと思います。

投稿2020/06/15 04:04

編集2020/06/15 04:04
sazi

総合スコア25206

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

cerophan

2020/06/15 08:57

ありがとうございます!帰宅してからACCESSを見ながら確認します。本当に感謝の気持ちでいっぱいです。
sousuke

2020/06/15 09:25

>sazi氏 アンダースコアってVBAではインターフェースで使うのでコントロール名に使うの推奨じゃない ってどこかで読んだ気がします。かなり昔で出典も覚えてないんですが、私は使わないようにしてます。 まあ実際使っても問題なさそうなのは知ってるんで、私個人の自己満足に近いと思いますが一応…笑
cerophan

2020/06/15 10:44

なるほど。ちょうど、気になってたところでした。ありがとうございます
sazi

2020/06/15 11:02 編集

アンダースコアで始まる名称とかはAPIで見た気もします。 今まで特段支障は無いので、VBAでコントロール名操作とかで区切りがあった方が良い気がして、私はアンスコ区切り派ですね。
guest

0

ベストアンサー

コントロールの名前、「コントロールソース」プロパティの設定、連結しているフィールド、この3つの違いをはっきりと認識できないないのかな、というのが質問内容からな印象です。

テーブルのフィールド名は、分かりやすい名前を付ければいいです。顧客の名前なら「顧客名」と付ければいいでしょう。

このテーブルをソースとするフォームをウィザードやデザインビューでのドラッグ&ドロップで作成すると、コントロール名 と コントロールソース にはフィールド名が設定されます。
コントロール名とコントロールソースと連結フィールド名が同じになるということです。

これはこれで便利なのですが、例えば、VBAで Me.顧客名 としたときに、コントロールを指しているか、フィールドを指しているか不明確になります。

saziさんの回答にもありますが、txt とか cmb などとコントロールの種別が分かるようコントロールの名前を変更しておくと、コードを書く時に紛れのない読みやすいコードになります。

また、別のコントロールからフォーム上のデータを参照するときにもコントロール名とフィールド名が異なっていると便利な場合があります。

例えば、コンボボックスでリストのデータを制限したいときに抽出条件を設定するときなどです。下記がその場合の例です。

Access - Accessコンボボックスについて|teratail

投稿2020/06/15 05:49

hatena19

総合スコア33790

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

cerophan

2020/06/15 08:56

ありがとうございます!帰宅してからACCESSを見ながら確認します。本当に感謝の気持ちでいっぱいです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問