Windows 8 & Office 2013 Access 2013

値によってテキストボックスの使用可と不可を切り替える

投稿日:2017年1月7日 更新日:

Accessのフォームで1つ目のコンボボックスで選択した値によって、次のテキストボックスの使用を有効にしたり、無効にしたりする方法です。

たとえば、下のようなフォームで[選択1]で[はい]、[いいえ]の中から[はい]を選択したら、次のテキストボックスへ入力ができ、[いいえ]を選択したら使用できないようにする方法です。

コンボボックスの値で使用不可の設定

参考ここでは、ウィンドウの表示は[ウィンドウを重ねて表示する]の設定にしています。

[タブ付きドキュメント]と[ウィンドウを重ねて表示する]の違い

Access2007以降、オブジェクトを表示すると、タブ付きウィンドウで表示されるようになっています。 昔からAccessを使用している方に ...

続きを見る

フォームにコンボボックスを作成

フォームに非連結のコンボボックスを作成します。

テキストボックスをコンボボックスへ変更

[デザイン]タブのコントロール]グループの[コンボボックス]を選択して作成できますが、先にテキストボックスを挿入していても、コンボボックスに変更することができます。

テキストボックスで右クリックして、ショートカットメニューから[コントロールの種類の変更]-[コンボボックス]をクリックします。

コントロールの種類の変更-コンボボックス

プロパティの設定

変更したコンボボックスのプロパティを表示します。

[F4]キーを押すと、プロパティの表示/非表示を切り替えられます。

[データ]タブで以下の設定をします。

値集合タイプ]は、[値リスト]を選択します。

値集合ソース]で[はい;いいえ]と入力します。

[既定値]は、["はい"]と入力するとフォームを表示したときに[はい]が選択された表示になります。

ここでは、空白のままにします。

値リストの編集の許可]は、[いいえ]を選択します。[はい]にすると、誰もがリストの編集ができるようになります。

コンボボックスの設定については、以下の記事で詳しく解説しています。

コンボボックスとリストボックスのカスタマイズ(プロパティの設定)

フォームにコンボボックスやリストボックスを使用すると、一覧のリストの中から選択できるようになります。 作成方法はいくつかありますが、コンボボ ...

続きを見る

コンボボックスのプロパティ

デザインビューをフォームビューに切り替えて、コンボボックスの動作を確認します。

デザインビューからフォームビューに切り替えるには、キーボードから[F5]キーを使用すると効率的です。

次に選択するテキストボックスの名前は[テキスト2]です。

非連結のテキストボックス[テキスト2]

参考コンボボックスの[入力チェック]の設定については、以下の記事で解説しています。

コンボボックスにリスト以外の値が入力されないようにするには

テーブルやフォームでコンボボックスのリストから値を選択して入力するようにしていても、プロパティの[入力チェック]を[いいえ]に設定していると ...

続きを見る

プロパティの[更新後処理]で設定

マクロビルダーか、コードビルダーを選択して設定します。

どちらで設定しても構いません。

マクロビルダーで設定

[テキスト0]の[プロパティ]の[イベント]タブにある[更新後処理]の[ビルダー選択]ボタン[…]をクリックします。

[ビルダーの選択]から[マクロビルダー]を選択して[OK]ボタンをクリックします。

更新後処理-ビルダーの選択-マクロビルダー

[新しいアクションの追加]の▼ボタンをクリックして、[If]を選択します。

[アクションカタログ]から選択してマクロウィンドウへ追加する方法もあります。

新しいアクションの追加-[If]を選択

以下のように入力します。

[テキスト0].value="はい"

テキストボックスに入力

次の[新しいアクションの追加]の▼ボタンをクリックして、[プロパティの設定]を選択します。

[新しいアクションの追加]-[プロパティの設定]

[コントロール名]に[テキスト2]と入力、[プロパティ]は▼ボタンをクリックして、メニューから[使用可能]を選択します。

[値]には[true]と入力します。

[プロパティの設定]に入力

[Elseの追加]をクリックします。

[Elseの追加]をクリック

[新しいアクションの追加]で[プロパティの設定]を選択します。

[コントロール名]に[テキスト2]と入力、[プロパティ]は▼ボタンをクリックして、メニューから[使用可能]を選択します。

[値]には[false]と入力します。

[プロパティの設定]を選択して入力

マクロアクションが以下のようになったら、上書き保存して閉じます。

上書き保存

プロパティの[更新後処理]には、[埋め込みマクロ]と表示されます。

更新後処理の[埋め込みマクロ]

コードビルダーで設定

[テキスト0]の[プロパティ]の[イベント]タブにある[更新後処理]の[ビルダー選択]ボタン[…]をクリックします。

[ビルダーの選択]から[コードビルダー]を選択して[OK]ボタンをクリックします。

更新後処理-ビルダーの選択-コードビルダー

VBEのコードウィンドウに下のように入力します。

If テキスト0.Value = "はい" Then
テキスト2.Enabled = True
Else
テキスト2.Enabled = False
End If

コード入力

プロパティの[更新後処理]には、[イベントプロシージャ]と表示されます。

設定後のプロパティの更新後処理

フォームビューで確認します。

[選択1]で[いいえ]を選択すると、[選択2]のテキストボックスは使用不可になります。

フォームビューで動作を確認

参考条件付き書式で使用可/不可に設定する方法も解説しています。

チェックをオンにしてテキストボックスを使用不可にする(条件付き書式)

Accessのフォームでチェックボックスをオンにすると、指定したコントロールを使用不可にする方法です。 条件付き書式の数式を使用して、条件が ...

続きを見る

コマンドボタンでコントロールの表示と非表示を切り替える方法も解説しています。

コマンドボタンでコントロールの表示と非表示を切り替える

Accessではフォームにボタンを設置して、クリックしてフォームやレポートの表示を実行することが多いです。 2個のボタンを設置して同じレポー ...

続きを見る

以下の記事では、コンボボックスの値集合ソースをボタンで切り替える方法を解説しています。

コンボボックスに表示するリスト(値集合ソース)をボタンで切り替え

Accessのフォームでコンボボックスの値集合ソースをボタンで切り替える方法です。 下のようなフォームを作成しています。 [日本食]ボタンを ...

続きを見る

検索

ほかの記事も検索してみませんか?

Access / Excel / PowerPoint / Word

Profile

執筆者/はま

-Windows 8 & Office 2013 Access 2013

Copyright © 2001-2024 初心者のためのOffice講座 All Rights Reserved.

Copyright© 初心者のためのOffice講座 , 2024 AllRights Reserved Powered by AFFINGER4.