• ベストアンサー

Access2007について 手動で任意の値を入力できる関数

タイトルの表現がおかしいかもしれないので具体的に示します。 IIF関数を用いて、ある条件に当てはまる場合→自動的に決まった値を表示             当てはまらない場合→手動で値を入力 ということで 式1: IIf("ある条件", "決まった値", [値を入力]) を作成しました。 "ある条件"は"チェックボックス=チェックなし"で規定値は"チェックなし" "決まった値"はある計算式をとおして"自動的に出てくる値"になっています。 この計算式が適用できない場合にチェックボックスをオンにして手動で値を入力したいと考えています。 しかし上式の場合、クエリの実行と同時に値の要求がきます。 できればフォーム上で計算されて出てきた値の正誤を確認して間違っている場合にチェックして直接値を入力して修正できる形をとりたいのですが可能でしょうか? よろしくお願いします。

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

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.2

フォームでの設定でいいのなら チェックボックスのチェンジイベントで下記のようにすれば良いのでは? Sub Checkbox1_Change() If Checkbox1 =False Then 'チェックなしなら Textbox2 = 数式    '決まった値をセット   Textbox2.Lock = True  'Textbox2 入力不可   Else          'チェックありなら Textbox2 = Null    '入力値消去   Textbox2.Lock = False 'Textbox2 入力可 End If End Sub

chappie610
質問者

お礼

回答ありがとうございます。ご指示いただいたように式を組んでみたのですがうまくいきませんでした。私がVBAについて不慣れであるのでもう少しよく勉強してから挑戦したいと思います。

その他の回答 (1)

  • CHRONOS_0
  • ベストアンサー率54% (457/838)
回答No.1

関数では無理ですね VBAで値の代入しかないでしょう 条件に合えば自動で値を代入、会わなければインプット要求 のようなコードを書けばいいのでは

chappie610
質問者

お礼

回答ありがとうございます。VBAを使いこなすのは私にとってまだ早いようなのでもう少し勉強してから挑戦したいと思います。

関連するQ&A