- ベストアンサー
access チェックボックス 別列に文字表示
初めてaccess2016でデータを作成しています。 予算管理表で、物品購入希望者が入力したものを予算管理者が購入許可を出す場合に、チェックボックスにチェックを入れると隣のフィールド(列)に自動的に「許可」と表示されるようにするにはどうすればよいでしょうか。 また、できれば許可された行全体に自動的に色をつけたい(Excelのように)のですが、accessでもできるのでしょうか。 超初心者ですので分かりやすく解説して頂けると助かります。 宜しくお願い致します。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
2013の場合です。2016でもいけると思います。 帳票フォームにして チェックボックスの名前をチェックとし、許可と入れるテキストボックス名を可否とした場合 1)チェックで許可を入れる チェックボックスのイベントでクリック時の右にある[・・・]をクリックしてマクロビルダーを開きます。 新しいアクションの追加で Ifを選び右のボックスに [チェック]=True として 上のメニューの全てのアクションを表示をクリックしてから 新しいアクションの追加で「値の代入」を選び アイテムに [可否] とし 式に "許可" 右の方にあるElseの追加でElseを追加して 値の代入 アイテムに [可否] とし 式に "" として閉じるで保存します。 2)行に色を付ける 行全体に非連結のテキストボックスを作成し最背面に置きます。 使用可能を「いいえ」編集ロックを「はい」タブストップ「いいえ」にします。 そのテキストボックスと他のテキストボックス全ての条件付き書式で 式:[チェック]=True として色を決定します。 非連結のテキストボックスのクリック時のイベントでコードビルダーを作成し (テキスト17とした場合) Private Sub テキスト17_Click() End Sub ができるのでフォームにIDというテキストボックスがある場合 (IDは色が付いた時のテキスト17をクリックしたときに選択した状態にしたいコントロール名にしてください) Private Sub テキスト17_Click() Me.ID.SetFocus End Sub とします。
その他の回答 (3)
- kkkkkm
- ベストアンサー率66% (1719/2589)
締め切られているので解決したのかもしれませんが、もし補足の部分が解決していなければ以下を参考にしてください。 なお、これはサポートに依頼して投稿されたものなので、このまま続けることができません。もし疑問が解決しなければ新たに質問を出してください。 上のリボン「作成」→「マクロとコード」→「マクロ」のマクロはそのアクセスDBの汎用のマクロになります。 今回作るフォーム専用のマクロの作成は マクロビルダーで埋め込みマクロを作成 https://hamachan.info/win10/access/umekomi1.html の 「マクロビルダーの作成」の上にある画像を参考にしてください。 ボタンのマクロの説明ですがそれをチェックボックスと考えてください。 フォームを開くマクロの説明ですので上記の部分だけを参考にしてください。
- kkkkkm
- ベストアンサー率66% (1719/2589)
行に色を付けるですが チェックボックスの列だけ色がつかなくてもいいのでしたら、データシートビューの許可を「はい」にして既定のビューをデータシートにすると添付画像のようになります。 その場合 行全体に非連結のテキストボックスの作成や 連結のテキストボックスのクリック時のイベントでコードビルダー などは不要です。 ただしテキストボックス全ての条件付き書式は必要です。
補足
kkkkkmさま 早速お返事頂きありがとうございます!とてもとても助かります。 とりあえず1)チェックで許可を入れる作業をしているのですが、 教えて頂いた方法でマクロを作成、実行すると「式に指定した名前’チェック’が見つかりません。現在のフォームまたはレポートのコンテキストを指定せずに、カレントオブジェクトにないコントロールを指定した可能性があります」とエラーが出ます。 (チェックボックスの名前は「チェック」としてあります) 恐らく、説明いただいた『チェックボックスのイベントでクリック時の右にある「・・・」をクリックしてマクロビルダーを開きます』という意味がよくわからず、上のリボン「作成」→「マクロとコード」→「マクロ」から入ったのがいけなかったのかと思うのですが。 すみません、初歩的なことで申し訳ありませんが『』の部分を教えて頂けますでしょうか。 宜しくお願い致します。
- kkkkkm
- ベストアンサー率66% (1719/2589)
お礼
kkkkkm様 ご丁寧にありがとうございます。 回答を締め切ったつもりはなかったのですが、初めてこちらのサイトを利用したのでいつのまにか締め切りとしてしまったようです。ご迷惑をお掛け致しました。 にもかかわらずご回答頂き、本当に感謝致します。 教えて頂きました内容で作業してみます。 またわからないことがありましたら新規の質問でご連絡させて頂きます。 ありがとうございました。 (初めての利用で、「OKチップ」がまだないためお送りすることができず申し訳ありません。)