![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
Accessのフォームで以下のようなことを実現したいのですが、
1.テーブルAに以下のような情報を持たせる。
<テーブル名:A>
区分値 区分値名 分類
1 瓶(無色) 10
2 瓶(有色) 10
3 缶 30
2.選択クエリーを使い別のテーブル情報(テーブル名:B)をフォームにて表示させるが、
フォーム上で表示させる時に、テーブルAの区分値名を表示させる。
3.2の際にテーブル名:Aの分類が”30”だった場合、
フォーム上に設けたチェックボックスにグレーの色をつける。
いろいろな書籍等で調べているのですが、分かりません。
どなたかご教授頂けませんか?
No.2ベストアンサー
- 回答日時:
現状の詳細がわからないので、こちらの都合で説明します。
1. テーブルA を元にフォーム作成ウィザードで単票形式のフォームを作成
2. デザインモードで開き、添付図のように以下のコントロールを追加
テストなので非連結で良い
1)Checkbox コントロール 名前:chkSample
2)Label コントロール 名前:lblBackColor
この時、Label が最背面にくるようにする
3. VBE を開き、以下のソースをペーストする
' // フォームを開いた(ロード)したときのイベント
'
Private Sub Form_Load()
With Me.lblBackColor
' 適当に位置やサイズを変更
.Top = Me.chkSample.Top - 40
.Left = Me.chkSample.Left
.Width = Me.chkSample.Width
.Height = Me.chkSample.Height + 10
' キャプション消去
.Caption = ""
' 背景スタイルをノーマルにする
.BackStyle = 1 ' 1:Normal 0:Transparent
End With
End Sub
' // レコードが移動した時のイベント
'
Private Sub Form_Current()
Call ChangeBackColor
End Sub
' // 分類フィールドの値が変更されたときのイベント
'
Private Sub 分類_AfterUpdate()
Call ChangeBackColor
End Sub
' // ラベルの背景色を変更する
'
Private Sub ChangeBackColor()
Dim nColor As Long
If Val(Me.[分類].Value) = 30 Then
nColor = RGB(220, 220, 220)
Else
nColor = Me.詳細.BackColor
End If
Me.lblBackColor.BackColor = nColor
End Sub
'以上 ---------------------------------------------
なお、チェックボックスの四角内の背景色は変更できません。また、
スモールサンプルなので他に必要な処理は適当に追加して下さい。
![「AccessVBAの値によってチェックボ」の回答画像2](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/0/168626_5497efbfd4576/M.jpg)
再度のアドバイスありがとうございます。
実現可能であれば、チェックボックスの□内の背景色を変更させたかったのですが、できないのですね。
アドバイス頂いたように、ラベルに対して背景色を変更する方向で検討します。
サンプルまで作成して頂き、ありがとうございます。
大変感謝しております。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- Access(アクセス) AccessVBAで降順にするテーブル作成クエリを使用して作成したテーブルを削除し同一のテーブル作成 1 2023/01/06 11:17
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- Access(アクセス) Access2016でフォーム内にExcelの複数シートを 表示させるイメージで複数テーブルの デー 1 2022/11/25 15:30
- Access(アクセス) Accessにインポートした複数のテーブルを表示させる方法が分かりません。 1 2023/01/30 20:22
- Access(アクセス) access フォーム 大分類、小分類 1 2022/08/11 18:03
- SQL Server DBのテーブルの設計ができず困っています。 2 2023/06/29 16:43
- Access(アクセス) Accessの参照フィールドの列がずれてしまいます 1 2023/07/19 15:00
- JavaScript テーブルの中のセレクトボックスの値が0のとき、非表示にしたい 3 2022/05/29 10:13
- Access(アクセス) Accessでセレクタをダブルクリックで別フォームで詳細表示 3 2022/12/20 10:36
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
Access サブフォームでの選択行の取得
その他(データベース)
-
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
ACCESSで条件によってフォーム上のフィールドの色を変更
Access(アクセス)
-
-
4
yes/no型のチェックができない(アクセス2003)
Access(アクセス)
-
5
アクセスのレポートのヘッダーを2ページ以降にもつけるには?
Access(アクセス)
-
6
Access フォームのテキストボックスに半角英字のみで入力する設定は
Access(アクセス)
-
7
Accessのフォーム上にレコード数とレコード番号の表示
その他(データベース)
-
8
Access VBAから使用したExcelプロセスを閉じる方法について
Visual Basic(VBA)
-
9
ACCESSでコントロールソースの変更
Access(アクセス)
-
10
新規レコード行を非表示にしたい
Access(アクセス)
-
11
選択したチェックボックスのみチェックを入れたいのですが
その他(データベース)
-
12
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
13
Accessのフォームでタブの色
Access(アクセス)
-
14
Accessの画面更新を一時的に停止する方法。
その他(データベース)
-
15
Access 複数フォームを開き、画面の最上面にしたいフォームをコント
その他(データベース)
-
16
Accessの条件付き書式設定で、複数の条件が一致した時の書式を設定したい
その他(Microsoft Office)
-
17
YES/NO型の値
Excel(エクセル)
-
18
現在アクティブなタブのページ名を取得したい
Access(アクセス)
-
19
親フォームからサブフォームのレコードソースを設定
Access(アクセス)
-
20
サブフォームに対してGoToRecordするには?
その他(Microsoft Office)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessでデータを更新したらそ...
-
前のレコードの値を自動で入れたい
-
access別のテーブルを参照して...
-
Accessフォームが入力できません。
-
インデックスまたは主キーにはn...
-
ACCESSでフォームのチェックボ...
-
AccessVBAの値によっ...
-
ACCESSで定型入力の〒が表示さ...
-
ACCESS フォームで入力データ...
-
Accessでのデータベース構築に...
-
アクセスでコードを入れると名...
-
文字列の入っているString値、...
-
テキスト型のフィールドでハイ...
-
入力した値をコンボボックスに...
-
Accessで、オートナンバー型を...
-
Accessのフォームのデータシー...
-
アクセスで、テーブル左列の文...
-
access ダブリ登録を防止したい
-
Accessで、最後(更新)にエラ...
-
DELPHIでSQLテーブルを読み込み...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
前のレコードの値を自動で入れたい
-
access別のテーブルを参照して...
-
Accessでデータを更新したらそ...
-
Accessでフォームに自動入力し...
-
インデックスまたは主キーにはn...
-
入力した値をコンボボックスに...
-
Accessフォームが入力できません。
-
ACCESS フォームで入力データ...
-
アクセスでコードを入れると名...
-
access ダブリ登録を防止したい
-
ACCESSでフォームのチェックボ...
-
AccessVBAの値によっ...
-
テキスト型のフィールドでハイ...
-
ACCESS2000の帳票フォームでテ...
-
Accessのフォームでデータ入力...
-
Access2010 レコードの更新日付...
-
アクセスのフォームの必須項目...
-
ACCESSで定型入力の〒が表示さ...
-
「バリアント型でない変数に Nu...
-
Accessのフォーム入力をしても...
おすすめ情報