• ベストアンサー

あるレコードのフィールドだけ入力可能にしたい

Access 2013 VBA フォームの帳票タイプで あるレコードのチェックボックスにチェックを入れた時だけ、そのレコードにある特定のフィールドのテキストボックスを入力可能にしたいです。 どのようにしたら良いでしょうか? 誰かお分かりの方おられましたら、よろしくお願いします (お正月でまだ誰も見る暇がないようですが・・・)

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

  • ベストアンサー
回答No.1

チェックボックスは連結コントロールで、「チェック」というフィールドと連結していると仮定して回答します。 条件付き書式を使います。 フォームのデザインビューで入力可/不可を設定したいテキストボックスを選択します。 リボンの「書式」タブ→[条件付き書式]→[新しいルール]で、書式設定で「式」を選択して、隣のボックスに [チェック]=False という式を入力します。 ボックスの下の右端の「有効化」のアイコンをクリックして選択状態にします。 以上で、チェックボックスにチェックを入れてあるレコードのみ編集可能になります。

superwonderful
質問者

お礼

新年あけましておめでとうございます。 ご回答ありがとうございます。早速 出来ました。

関連するQ&A

  • ACCESS2000の帳票フォームでテキストボックスの入力値を取得したい

    こんにちは。ACCESS2000でツールを作成しています。 テーブルはExcelにリンクさせ、クエリを介して帳票フォームで データを表示しています。 帳票フォームのレコード毎にテキストボックスを追加して それぞれ入力できるようにし、その値をVBAで取得したいのですが どうすればよいでしょうか。 テキストボックスを追加して実行すると、一つのテキストボックスに 入力した値が全てのレコードに反映されているようです。 帳票フォームのしくみがよく分かりません。 どなたか教えていただけないでしょうか。 宜しくお願いします。

  • 1つ前のレコードのフィールドをコピーするVBAについて

    あるフィールドに入力する時、1つ前のレコードと同じ値であれば、Ctrl+2で簡単に入力出来ますね。 それで、更に入力の手間を省くために、これもVBAで自動化しようと思ったのですが、はてどうしたらと行き詰まってしまいました。 入力用のフォームを作っておいて、いくつかのフィールドに入力するテキストボックスをいくつか作って、そのうち1つはほとんど同じ値を持つとすれば、このフォームの更新前のイベントプロシージャが適切かと思います。このフォームに入力しようとしたら、即座にほとんど決まった値を持つフィールドに、1つ前のレコードの値が入るというようなコードになるかと思います。そのコードの1例を教えて頂けますか?また、他のいい方法はあるのでしょうか? 以上、よろしくお願い致します。

  • 前レコードのテキストボックスと同じ値を表示させる

    環境:XP,ACCESS2003 帳票形式のフォームがあります。 次のレコードの入力に移った時、前のレコードのあるテキストボックスは、同じ内容を表示させる方法がわかりません。なお、同じ内容を表示させたいテキストボックスは連結でテーブルのフィールドをコントロールソースにしています。

  • Access2013 vbaサブフォームのレコード

    [Access2013 vba] ■したいこと サブフォームのレコードの中から、一レコードだけをチェックボックスなどで選択したいのですが、どのようにしたら出来ますでしょうか。 複数行選択は出来ないようにしたいです。 選択したのち、メインフォームの選択ボタンを押すと、そのレコードのID番号を取得して、呼出元のフォームのIDフィールドに代入したいです。 ■画面の流れ・・・ Aフォーム → 帳票型Bフォームで、レコードを選び「開く」ボタンを押す→ B 'メインフォームとCサブフォーム)が開く Cサブフォームのレコードをチェックボックスにチェックを入れて選択する B ' メインフォームの「選択」ボタンを押すと B ' メインフォームと、その前のBフォームが閉じて Aフォームに戻り、AフォームのIDフィールドに選択したIDが格納される。 よろしくお願いします。

  • Access フォームからの検索について

    初歩的な質問で申し訳ありませんが教えて下さい。 Access2000を使っています。 フォームに作ったテキストボックスに、入力した値又は文字と、特定のフィールドと比較し一致した場合にそのレコードをフォームに表示する方法はないでしょうか? いろいろと、web上のQ&Aなども見ましたが、思った動作をしませでした。 考えているのは、   ・テキストボックスにある値を入力し、『Enter』を押すとテキストボックスに入力した値と特定のフィールドと一致したレコードをフォームに表示 ・一致しない場合はメッセージボックスで一致しない旨を表示 です。 ・完全一致のみ表示 VBAでの動作を考えていますが、合わせて他の方法があれば教示頂ければと思います。 以上、お手数をお掛け致しますがよろしくお願い致します。

  • Accessフィールド(長いテキスト)から単語検索

    Access2013 フォーム の特定レコードで、フィールド(長いテキスト)に入力してある長い文書に、特定の単語が含んでいるか、検索する方法を教えて下さい。できるなら、文書中の特定の単語にアンダー線などが付くと良いのですが。 宜しくお願いします。

  • 入力フィールドの開き方を教えてください

    現在、アクセス2003を使用してデータベースを組んでいます。 その中で商品をテキストボックスにカナ読みを入れてコンボボックスに商品名を表示させるようにしていますが、リストに商品がなかった時、データフィールドに直接、商品名を入力できるようにしたいと思います。 具体的には次のような方法を考えています。 テキストボックスにカナ読みを入れる           ↓ ヒットしなかった時は、入力フィールドが表示される(通常は、入力フィールドは不可視にしておき、入力するときに表示されるようにする)           ↓ 表示された入力フィールドに入力する 以上のようにしたいのですが、その方法をご存知の方は教えてください。 なお、通常表示されるフィールドは編集ロックをかけています。

  • サブフォームからメインフォームのフィールドにエンターキーで移動したい

    ACCESS2000です。 フォームの中にサブフォームを作っています。 入力される都合で、フォームの中途にサブフォームがあります。このサブフォームのレコードの数は固定しています。(今は19です) サブフォームは帳票形式です。 サブフォームの最後のレコードでエンターキーやTABキーが押された時、メインフォームの指定するフィールドに移動するには、どうすれば良いでしょう。 使用者に特殊なキー操作を強要したくないので、VBAで記述したいのですが。

  • Access2000フォーム上でフィールドの入力制限をかけたい

    Access2000を使用しています。 フォーム上で、とあるチェックボックスにチェックを入れた場合に、ほかのいくつかのフィールドにデータが入力できないように制限をかけたいのですが、どのように設定すればよいでしょうか?

  • Access2002 フォーム上にないフィールドに入力するには

    フォーム上にあるボタンを押すと、あるフィールドに数値を入力する VBAを作りましたが、フィールドには入力されませんでした。 色々やってみたらフォーム上にフィールドが無いと入力されないようでした。 これはAccess2002の仕様なのでしょうか。 それともそのための表記があるのでしょうか。 例) 顧客ID = 1 単純にこれだけのことがしたいのですがうまくいきません。 よろしくお願いします。