
ACCESSの初心者な者で大変困っています。
フォームで非連結のテキストボックスに、あるフィールドの値を条件にしてテキストに出力をするにはどうしたらよいでしょうか。モジュールで関数を作成しようと努力しましたがオーバーフロー的な状態になってしまいました。IF文はわかりますが出力するすべがわかりません。お願いします。
ちなみに条件が20以上あります。
例
ID 点検時間
10 200
10 500
20 500
IDが10のとき点検時間+150
IDが20のとき点検時間+200 等

No.2ベストアンサー
- 回答日時:
VBAで作ることも、クエリで対応することも、フォームのつくりで入力することも、可能であると思います。
VBAにて作成したときに発生しうる問題は、新しく条件が追加された際にコードの変更を行う必要が出てくるということです。 それを行いたくないのであれば、条件をテーブルに入れてそれを読み出す物を作らなくてはいけません。 どうせ条件をテーブルに入れるなら、クエリで対応するほうが簡単だと思います。
まずもともとのテーブル(仮に名称を[T_Data]とさせていただきます)に 加算後点検時間、加算後購入日 のフィールドを追加しておいたほうが良いと思います。
それから、別に条件を入れたテーブル(仮に名称を[T_Kasan]とさせていただきます。)を作成します。 項目及び内容としては、
ID 加算時間 加算日数
10 150 0
20 200 1
30 0 2
のようなものでよいと思います。
一括で既存のデータを更新させるには、
更新クエリを一つ作り、[T_Data]to[T_Kasan]を表示させIDでリレーションシップで結び結合プロパティを「'T_Data'の全レコードと'T_Kasan'の同じ結合フィールドのレコードだけを含める。」とします。 更新する内容としては T_Data の
[加算後点検時間]に[T_Data]![点検時間] + [T_kasan]![加算時間]
[加算後購入日]に[T_Data]![購入日] + [T_kasan]![加算日数]
としてクエリを実行させれば[加算後点検時間]、[加算後購入日]に加算されたデータが入力されます。
データ入力時に、同時に加算後のデータを更新するのであれば、上記クエリの選択版を作ります。(特に抽出条件は要りません。) このクエリをフォームのレコードソースとして、点検時間の更新後処理で、加算後点検時間を[T_Data]![点検時間] + [T_kasan]![加算時間]のような形で入力すればよいと思います。(購入日の加算も同じように行います。)

No.3
- 回答日時:
VBAで作ることも、クエリで対応することも、フォームのつくりで入力することも、可能であると思います。
VBAにて作成したときに発生しうる問題は、新しく条件が追加された際にコードの変更を行う必要が出てくるということです。 それを行いたくないのであれば、条件をテーブルに入れてそれを読み出す物を作らなくてはいけません。 どうせ条件をテーブルに入れるなら、クエリで対応するほうが簡単だと思います。
まずもともとのテーブル(仮に名称を[T_Data]とさせていただきます)に 加算後点検時間、加算後購入日 のフィールドを追加しておいたほうが良いと思います。
それから、別に条件を入れたテーブル(仮に名称を[T_Kasan]とさせていただきます。)を作成します。 項目及び内容としては、
ID 加算時間 加算日数
10 150 0
20 200 1
30 0 2
のようなものでよいと思います。
一括で既存のデータを更新させるには、
更新クエリを一つ作り、[T_Data]to[T_Kasan]を表示させIDでリレーションシップで結び結合プロパティを「'T_Data'の全レコードと'T_Kasan'の同じ結合フィールドのレコードだけを含める。」とします。 更新する内容としては T_Data の
[加算後点検時間]に[T_Data]![点検時間] + [T_kasan]![加算時間]
[加算後購入日]に[T_Data]![購入日] + [T_kasan]![加算日数]
としてクエリを実行させれば[加算後点検時間]、[加算後購入日]に加算されたデータが入力されます。
データ入力時に、同時に加算後のデータを更新するのであれば、上記クエリの選択版を作ります。(特に抽出条件は要りません。) このクエリをフォームのレコードソースとして、点検時間の更新後処理で、加算後点検時間を[T_Data]![点検時間] + [T_kasan]![加算時間]のような形で入力すればよいと思います。(購入日の加算も同じように行います。)

No.1
- 回答日時:
どのようなフォームなのかもう少し情報をいただけますか? いっぺんにいくつのデータを表示させているのか、レコードソースはあるのかないのか? それによって、作り方が変わってきます。
もしもいっぺんに1レコード分のデータを表示させているなら、
ID と 加算時間 をテーブルにしてデータを入れておいて、あとはクエリをつくり合計時間を計算する。
そのクエリをレコードソースとしたフォームを作れば、非連結にする必要はないと思います。
この回答への補足
書き方がわかりにくく申し訳ありません。フォームは表形式のものです。またレポートでも出力したいと思っています。クエリーを作成すると考えたのですが分岐する条件が多すぎて難しいと判断しましたが大丈夫なのでしょうか?
具体的に書きますと
ID 点検時間 購入日 時期点検日という4つのフィールドがあります。IDによって点検時間に時間を加算するものが15条件ぐらいと購入日に加算するものが5条件ほどあります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
[Access]帳票フォームにて連続する非連結コントロールに個々の値を入れるには
Access(アクセス)
-
Accessのレポート上のテキストボックス値を設定したい
その他(データベース)
-
テキストボックスにクエリ結果を表示させたい
その他(データベース)
-
-
4
access テキストボックスの値取得
Access(アクセス)
-
5
access別のテーブルを参照してテキストボックスに値を表示、編集したい
Access(アクセス)
-
6
Accessで別テーブルの値をフォームに表示したい
その他(データベース)
-
7
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
-
8
Accessでフォームから別フォームのテキストボックスの値を設定する
Visual Basic(VBA)
-
9
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
10
アクセスVBAで、フォームの値をレポートに代入したい
Access(アクセス)
-
11
フォームを開くときに、コンボボックスの値を選択(アクセスVBA)
Visual Basic(VBA)
-
12
access2019 チェックボックスと連動したクエリ抽出条件について
Access(アクセス)
-
13
ACCESSでテーブルにあるチェックボックスを一括でYesにする方法を教えてください
Access(アクセス)
-
14
accessのレポートであとから他のテーブルのフィールドを追加する方法
Access(アクセス)
-
15
Access 最後のレコードに到達するまでループ処理を行う方法
Access(アクセス)
-
16
Accessでテーブルの値をテキストボックスに代入するには?
Access(アクセス)
-
17
access 非連結のサブフォームの値を取得してテーブルへ追加したい
その他(データベース)
-
18
[至急]accessクエリ結果を入力フォームに出力
その他(Microsoft Office)
-
19
クエリで出来た表にチェックボックスを追加する
その他(Microsoft Office)
-
20
レコードを保存するコード アクセスvba
その他(Microsoft Office)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
生活保護費なのですが、障害手...
-
福祉事務所が、5月の特例加算10...
-
振替加算について
-
84歳母の入院費用が高いのです...
-
自立支援医療(精神通院)の「都...
-
愛知県では、受験機会を2回用意...
-
成績のことで教授にメールして...
-
身体障害者手帳・難病申請の交...
-
寄付金と補助金と助成金ってど...
-
老人福祉法って今も存在するの...
-
社会福祉事業団って
-
ネットワークハードディスク(N...
-
難病指定の病気になると、医療...
-
病院が書いた検査結果の記録簿...
-
医療費の端数処理
-
後期高齢者医療制度医療費自己...
-
Re 補助金を使って機械を購入し...
-
精神疾患があり自立支援を受け...
-
特定疾病の申請日と認定日
-
残余モデルと制度モデルとは何...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
福祉事務所が、5月の特例加算10...
-
ACCESSで非連結のテキス...
-
生活保護の障がい者加算
-
生活保護の障害者加算について ...
-
生活保護障害者加算金は貰える...
-
生活保護 養育手帳 障害者加算
-
生活保護と特別障害給付金
-
生活保護 障害者加算
-
障害者年金について。私は生活...
-
生活保護 障害加算
-
特別食加算と食堂加算について ...
-
障害者加算について
-
生活保護を受けています。障が...
-
振替加算について
-
生活保護とても少ないので演技...
-
うつ病で生活保護を受けています
-
生活保護の精神障害加算について
-
私は、LINE Qをしていて、11月6...
-
生活保護で障害者厚生年金3級...
-
生活保護は最低限の生活しか出...
おすすめ情報