• ベストアンサー

access チェックボックス 別列に文字表示

初めてaccess2016でデータを作成しています。 予算管理表で、物品購入希望者が入力したものを予算管理者が購入許可を出す場合に、チェックボックスにチェックを入れると隣のフィールド(列)に自動的に「許可」と表示されるようにするにはどうすればよいでしょうか。 また、できれば許可された行全体に自動的に色をつけたい(Excelのように)のですが、accessでもできるのでしょうか。 超初心者ですので分かりやすく解説して頂けると助かります。 宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率65% (1620/2460)
回答No.1

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
  • ベストアンサー率65% (1620/2460)
回答No.4

締め切られているので解決したのかもしれませんが、もし補足の部分が解決していなければ以下を参考にしてください。 なお、これはサポートに依頼して投稿されたものなので、このまま続けることができません。もし疑問が解決しなければ新たに質問を出してください。 上のリボン「作成」→「マクロとコード」→「マクロ」のマクロはそのアクセスDBの汎用のマクロになります。 今回作るフォーム専用のマクロの作成は マクロビルダーで埋め込みマクロを作成 https://hamachan.info/win10/access/umekomi1.html の 「マクロビルダーの作成」の上にある画像を参考にしてください。 ボタンのマクロの説明ですがそれをチェックボックスと考えてください。 フォームを開くマクロの説明ですので上記の部分だけを参考にしてください。

GS0303
質問者

お礼

kkkkkm様 ご丁寧にありがとうございます。 回答を締め切ったつもりはなかったのですが、初めてこちらのサイトを利用したのでいつのまにか締め切りとしてしまったようです。ご迷惑をお掛け致しました。 にもかかわらずご回答頂き、本当に感謝致します。 教えて頂きました内容で作業してみます。 またわからないことがありましたら新規の質問でご連絡させて頂きます。 ありがとうございました。 (初めての利用で、「OKチップ」がまだないためお送りすることができず申し訳ありません。)

  • kkkkkm
  • ベストアンサー率65% (1620/2460)
回答No.3

行に色を付けるですが チェックボックスの列だけ色がつかなくてもいいのでしたら、データシートビューの許可を「はい」にして既定のビューをデータシートにすると添付画像のようになります。 その場合 行全体に非連結のテキストボックスの作成や 連結のテキストボックスのクリック時のイベントでコードビルダー などは不要です。 ただしテキストボックス全ての条件付き書式は必要です。

GS0303
質問者

補足

kkkkkmさま 早速お返事頂きありがとうございます!とてもとても助かります。 とりあえず1)チェックで許可を入れる作業をしているのですが、 教えて頂いた方法でマクロを作成、実行すると「式に指定した名前’チェック’が見つかりません。現在のフォームまたはレポートのコンテキストを指定せずに、カレントオブジェクトにないコントロールを指定した可能性があります」とエラーが出ます。 (チェックボックスの名前は「チェック」としてあります) 恐らく、説明いただいた『チェックボックスのイベントでクリック時の右にある「・・・」をクリックしてマクロビルダーを開きます』という意味がよくわからず、上のリボン「作成」→「マクロとコード」→「マクロ」から入ったのがいけなかったのかと思うのですが。 すみません、初歩的なことで申し訳ありませんが『』の部分を教えて頂けますでしょうか。 宜しくお願い致します。

  • kkkkkm
  • ベストアンサー率65% (1620/2460)
回答No.2

No1で作成した簡単なイメージです。

関連するQ&A

  • アクセス チェックボックスについて

    チェックボックスやコンボボックスを使って入力するようにすると、フィールドに入力できるのが値だけになってしまいます。値でなく、選択した文字列を入力したいのですが、どうやったらいいのでしょうか?

  • チェックボックス access2003

    既存のデータベースからaccessを使って検索を行っています 表示させるテーブルの中でひとつだけ 0と1どちらかが入力されているフィールドがあります それをフォームで表示する際にチェックボックスで表示させたいのですが どのようにすればよいのでしょうか? ご存知の方よろしくお願いいたします

  • グループ化してあるチェックボックスについて

    グループ化してあるチェックボックスについて Access2007で売上を管理しています。 初めは作り方がわからず、とにかく必要と思われるフィールドを作成して伝票を入力するフォームには領収済み(チェックボックスでY/Nを入力)というフィールドを埋め込みました。 入力と領収は普通タイムラグがあるので、フォームに入力した個々のレコードの[領収済み]フィールドにいちいちチェックを入れるということは普通しませんね。 検索→一括更新でチェックを入れたり、外したりするものです。 集計を行うのにあるクエリを作成し、チェックボックスのある[領収済み]フィールドをグループ化して表示させた場合、チェックボックスをクリックしたら一括でチェックを入れたことになる・・・ みたいなことは出来るのでしょうか? そのクエリを基にしたフォームを作成して、[領収済み]フィールド(チェックボックス)のプロパティのどこかをこうすれば・・みたいなことがありそうな気がしますが、わかりません。 これが効率的かどうかということは無視して考えていただけるとありがたいです。

  • Accessチェックボックス 一度で複数のチェックを入力

    会社でAccess2000を使用しています。 ExcelからAccessテーブルへインポートしたデータで、 チェックボックスがあるフィールドがあります。(フィールド名は「請求済」です) レコードが数千件あり、1ヶ月ごとに何百単位で請求の有無を確認をしなければなりません。 複数のチェックボックスへ、一度でチェックを入力する方法はありますか? ちなみにAccessは初心者で、マクロやVBAはやったことがありません。

  • Accessでチェックボックスからの入力を受け付けない

    お世話になります。 Access2003を使い、フォームにチェックボックスを作りました。  チェックボックスの値をテーブルに反映させるために、「チェックボックス」-「プロパティ」-「コントロールソース」より、該当テーブルの列を指定しました。 フォームビューにて、チェックボックスをクリックすると「このフォームは読み取り専用です」と言われ、チェックボックスへの操作は拒否されてしまいます。  どのようにすれば、フォームのチェックボックスから入力した値が、テーブルに反映できるのでしょうか?  なお、該当テーブルの列はyes/no型に指定しています。 よろしくお願いします。

  • accessのフォームのチェックボックスを動くようにしたいです。

    accessのフォームのチェックボックスを動くようにしたいです。 あるフォームは起動時、更新の許可を「いいえ」に設定しています。フォームの値をいじらせないようにしているためです。 編集可能釦をおしたときに、この更新許可を「はい」にしています。 起動時(起動後)に、あるチェックボックスだけ、動作するようにしたいのですが、なにか簡単な方法はありますでしょうか? チェックボックスが無理でしたら、他の操作ボックスでもよいです(西暦・和暦を指定しているだけのチェックボックスです) p.s. フォームには、テキストや、コンボなど沢山あるため、できれば更新「いいえ」はそのままにしたいです。

  • Access チェックボックスを押すと定型文を表示する方法

    必要項目を入力したあと期間を指定して抽出した結果をエクセルにエクスポートするようにしています。ここに手を加えて、各レコードがある条件に該当する場合、チェックボックスにチェックをいれるようにしようと思います。結果をエクセルにエクスポートするマクロを組んでいますが、エクセル上ではそのチェックを入れたフィールドにはFalseかTrueが表示されます。 質問は (1)この"False"や"True"というものを、たとえばチェックをつけた場合に"True"ではなく"Document not completed"に、"False"を空欄といった文字列などに変更できないでしょうか (2)エクセルにエクスポートした結果の見た目の問題ですが、このチェックボックスのフィールドは"Document completed?"となっていて、この問いに対する答えをY/Nでチェックをつけるというものです。エクセル上で見ると"Document completed?"という文字列が長くてセル内に収まっていないので、それを何とかセルの長さを自動的に調整できないでしょうか。 というものです。わかりにくい説明ですみません。補足しますのでどうぞよろしくお願いします。

  • アクセス チェックボックスとクエリ

    いつもお世話になっております。アクセス初心者です。 あるフォームのチェックボックスのオンオフとコンボボックス、 クエリの選択条件が思うように連携できなくて困っています。 やりたいことは、、、フォームのチェックボックスが、 ON(True)ならば、 フィールドにコンボボックスのキーワードを含むレコードおよびフィールドが空白のレコードを抽出し、 OFF(False)ならば、 フィールドにコンボボックスのキーワードを含むレコードのみでフィールドが空白のレコードは抽出しない、 としたいのですが…。 IIfやSwitchで式を書きましたが、チェックを入れても外しても、どちらも抽出件数が0件になります。 クエリの実行は、コマンドボタンで別のフォームを開いています。 (IIfでは、エラーが出ているのか、チェックを入れた時『~キャンセルされました』と出ます。  IIf(…,…,IIf(…,…,…)) という感じで書きました。) Switchの時のクエリの抽出条件の式は、次のような感じです。 Switch([Form]![チェックボックス]=True,([テーブル名].[フィールド名]) Like "*" & [Form]![コンボボックス] & "*" Or Is Null,[Form]![チェックボックス]=False,([テーブル名].[フィールド名]) Like "*" & [Form]![コンボボックス] & "*") ( Like の前の『([テーブル名].[フィールド名])』は、式をビルドすると、勝手に追加されてきます。) このようなことはできないのでしょうか? 別の方法が必要でしょうか? すみませんが、教えてください。宜しくお願い致します。

  • Access チェックボックス項目について

    最近Accessを始めました。 YouTubeやブログなどを見ながらコツコツやっておりますが、下記のような事ができるかどうかわかりません。 現在はマクロビルダーでできる範囲で作成しております。 vbaは難しそうで少しずつ勉強中です。 やりたいこと データにチェックボックス項目が数か所あります。 このデータをレポートにしたときに、チェックボックスに判定があった項目のみ抽出させ、そのフィールド名をレポートのテキストボックスに表示させたいです。 現在、テキストボックスのコントロールソース部にチェックボックス名を打ち込んでも、判定結果の"-1"が表示されます。これをフィールド名にしたいです。 説明がわかりずらいかもしれませんが宜しくお願い致します。

  • PHP&MySQLでチェックボックスの解除

    こんにちは。 雑誌の購入をチェックボックスで購入済み、未購入と管理をしています。 MySQLのテーブルは zasshiテーブルにnameフィールドとcheckフィールドがあります。 チェックが入れば、購入済みとしてMySQLのcheckフィールドに1を登録します。 検索をして雑誌名とチェックボックスを表示 checkフィールドに1が登録されているものをディフォルトでチェックがはいるようにはできました。 次に解除をできるようにしようと思ったのですが、チェックボックスのチェックを外して送信をすると何も受け取れないので、解除ができません。 検索でしぼりこんでの表示をしているので、チェックが入っていないものを全て0にすることもできないので、何かよい方法はないでしょうか? まとめると、現在checkフィールドに1で登録されているものをチェックボックスの解除で0にしたいということです・・・ 拙い文章にわかりにくいかと思いますが,どうかよろしくお願いします。

    • ベストアンサー
    • PHP