- ベストアンサー
Access2007について 手動で任意の値を入力できる関数
タイトルの表現がおかしいかもしれないので具体的に示します。 IIF関数を用いて、ある条件に当てはまる場合→自動的に決まった値を表示 当てはまらない場合→手動で値を入力 ということで 式1: IIf("ある条件", "決まった値", [値を入力]) を作成しました。 "ある条件"は"チェックボックス=チェックなし"で規定値は"チェックなし" "決まった値"はある計算式をとおして"自動的に出てくる値"になっています。 この計算式が適用できない場合にチェックボックスをオンにして手動で値を入力したいと考えています。 しかし上式の場合、クエリの実行と同時に値の要求がきます。 できればフォーム上で計算されて出てきた値の正誤を確認して間違っている場合にチェックして直接値を入力して修正できる形をとりたいのですが可能でしょうか? よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
フォームでの設定でいいのなら チェックボックスのチェンジイベントで下記のようにすれば良いのでは? Sub Checkbox1_Change() If Checkbox1 =False Then 'チェックなしなら Textbox2 = 数式 '決まった値をセット Textbox2.Lock = True 'Textbox2 入力不可 Else 'チェックありなら Textbox2 = Null '入力値消去 Textbox2.Lock = False 'Textbox2 入力可 End If End Sub
その他の回答 (1)
- CHRONOS_0
- ベストアンサー率54% (457/838)
関数では無理ですね VBAで値の代入しかないでしょう 条件に合えば自動で値を代入、会わなければインプット要求 のようなコードを書けばいいのでは
お礼
回答ありがとうございます。VBAを使いこなすのは私にとってまだ早いようなのでもう少し勉強してから挑戦したいと思います。
お礼
回答ありがとうございます。ご指示いただいたように式を組んでみたのですがうまくいきませんでした。私がVBAについて不慣れであるのでもう少しよく勉強してから挑戦したいと思います。