![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.2ベストアンサー
- 回答日時:
条件が多いですね。
(^^;でも、少し面倒ですが、可能だと思いますよ。
名前を下記の様に仮定します。
フォーム名「フォーム1」
テキストボックス名「テキスト1」「テキスト2」・・・
マクロ名「マクロ1」
----以下手順-----------------------------------------------
フォーム1のイベント「更新前処理」にマクロ1を登録。
マクロ1の内容
1行目
条件:IsNull([Forms]![フォーム1]![テキスト1])
アクション:メッセージボックス
2行目
条件:IsNull([Forms]![フォーム1]![テキスト1])
アクション:イベントのキャンセル
3行目
条件:IsNull([Forms]![フォーム1]![テキスト1])
アクション:マクロの中止
チェックするテキストボックスが1つの場合は上記で終わり。
複数ある場合は、同様の処理をテキストボックス分続けます。
4行目
条件:IsNull([Forms]![フォーム1]![テキスト2])
アクション:メッセージボックス
5行目
条件:IsNull([Forms]![フォーム1]![テキスト2])
アクション:イベントのキャンセル
6行目
条件:IsNull([Forms]![フォーム1]![テキスト2])
アクション:マクロの中止
====以下同様====
----以上手順-----------------------------------------------
上記は、フォームの更新時にメッセージを表示します。
テキストボックスの更新時に、メッセージを表示したい場合は、
各テキストボックスの「更新前処理」にマクロを登録して下さい。
-----------------------------------------------------------
#補足
Accessの「マクロ」は、「VBA」ではありませんよ。>No1さん
ExcelやWordの「マクロ」とは違い、全く別の物です。
この回答への補足
未入力の場合はnullが発生しないみたいで、メッセージボックスがでません。
一度入力をして、取り消すとメッセージボックスがでます。
純粋に未入力の場合、メッセージボックスを表示する方法はないでしょうか?
No.3
- 回答日時:
>未入力の場合はnullが発生しないみたいで、メッセージボックスがでません。
>一度入力をして、取り消すとメッセージボックスがでます。
確認してみました。少し内容を訂正します。
フォームの「更新前処理」には必ず、マクロ1を登録して下さい。
これで、内容を更新し保存する際、新規レコードを追加し保存する際に、
メッセージが表示されるはずです。
-----------------------------------------------------------
各テキストボックスの「更新前処理」のマクロですが、
マクロ1を流用出来ると思っていましたが、テキストボックスが複数あると
うまく行きませんでした。
テキストボックスにマクロを登録する場合は、
そのテキストボックスのみをチェックするマクロを、新たに作る必要があります。
-----------------------------------------------------------
更新せずに、レコードを移動するだけでは、メッセージは出ません。
つまり、既にNullで登録されているデータのチェックは出来ません。
レコードの移動前のイベントは有りませんので、
チェックするタイミングがありません。
これは、マクロのみでは、難しいかも・・・(^^;
既にNullで登録されているデータのチェックも行いたい、と言う
ご要望でしたら、もう少し方法を探ってみます。
ありがとうございました。
謝らなければいけないことがあります。
最初に回答いただいた分で、用件が足りておりました。
思い込みで、マクロを貼り付けるところを”フォーム”ではなく”コントロール”の方に張っておりました。
マクロを"フォーム"に変更すると、ちゃんと動きました。
私は、vbaのベーシックの文字を見ると、昔のベーシック言語を思い出します。
今のベーシックと違うとわかっていても、受け入れることができません。(けっ、ベーシックか・・って感じになります。)
一応、vbaを覚えようとしているのですが、上記のような理由からすぐにvba忘れてしまいます。
だから、すべてマクロでしようと考えております。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java コンソールから所属財産を入力(単位:万円 1000~100000以内でIntegerに変換できない場 2 2022/05/31 21:32
- Visual Basic(VBA) VBA ドロップダウンリストを残して値のみクリア 2 2022/10/27 05:42
- Excel(エクセル) Excelについて A1からA12まで、1月〜12月と入力し、 B1からB12の範囲に、C1とD1に 4 2022/05/26 22:48
- Excel(エクセル) エクセル VBA実行中のApplication.ScreenUpdatingについて 3 2023/07/13 21:06
- Access(アクセス) Accessで予定表を作成しようとしてます。 テーブル フィールド名 連番 オートナンバー型 年月日 2 2023/07/23 11:40
- Excel(エクセル) エクセルで条件付き書式を使わずにセルの文字の色を変える方法を教えて下さい 8 2023/07/28 01:15
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- Excel(エクセル) エクセルのマイナス表示 3 2022/03/28 16:35
- Access(アクセス) capeofdragonと申します。 Access2016を使っております。 あるフォームがあり、テ 2 2022/09/09 13:18
- Excel(エクセル) Excelヘルプの原文を表示する最速の方法(手順)には? 1 2023/08/11 11:30
このQ&Aを見た人はこんなQ&Aも見ています
-
「環境が人を育てる」って本当?環境によって人格や生き方は本当に変わるのか
環境が人生に与える影響は実際どれほどのものなのか、専門家の田宮由美さんに伺った。
-
空白はダメというエラーの表示(アクセス)
その他(データベース)
-
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
-
Accessテキストボックスの未入力チェック
その他(コンピューター・テクノロジー)
-
-
4
accessで重複を防ぎたい
Access(アクセス)
-
5
Accessでコードを入れると名前がでるようにしたい
Access(アクセス)
-
6
accessで該当するレコードがない場合
その他(プログラミング・Web制作)
-
7
Accessでフォームから別フォームのテキストボックスの値を設定する
Visual Basic(VBA)
-
8
Accessで、フォームに情報を入力途中で、やめる(レコードに保存しない)ということは出来ますか?
Access(アクセス)
-
9
Accessでテーブルの値をテキストボックスに代入するには?
Access(アクセス)
-
10
フォームで入力しても反映されない
Access(アクセス)
-
11
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
12
サブフォームに対してGoToRecordするには?
その他(Microsoft Office)
-
13
サブフォームの新規レコードに移動したい アクセス
Access(アクセス)
-
14
Accessで別テーブルの値をフォームに表示したい
その他(データベース)
-
15
ACCESSでVBAから選択クエリの抽出条件を指定したい
Access(アクセス)
-
16
ACCESSのフォームで次のレコードに移動しない方法を教えてください
その他(データベース)
-
17
Accessのフォームで、空欄のレコードを検索したい。
その他(データベース)
-
18
入力規則違反-任意のエラーメッセージの表示
Access(アクセス)
-
19
ACCESSフォーム入力後の確定
Access(アクセス)
-
20
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel・Word リサーチ機能を無...
-
特定のPCだけ動作しないVBAマク...
-
一つのTeratermのマクロで複数...
-
メッセージボックスのOKボタ...
-
エクセルで特定の列が0表示の場...
-
ExcelのVBA。public変数の値が...
-
Excel マクロ VBA プロシー...
-
エクセルに張り付けた写真のフ...
-
Excelのマクロボタンをダブルク...
-
エクセルで別のセルにあるふり...
-
TERA TERMを隠す方法
-
#defineの定数を文字列として読...
-
特定文字のある行の前に空白行...
-
VBA アドインについて お詳しい...
-
別シートに順番で貼り付け
-
マクロ実行時、ユーザーフォー...
-
ソース内の行末に\\
-
ピボットテーブルでの毎回可変...
-
Excel マクロでShearePoint先の...
-
エクセルマクロでワードの一ペ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel・Word リサーチ機能を無...
-
特定のPCだけ動作しないVBAマク...
-
エクセルで特定の列が0表示の場...
-
Excel マクロ VBA プロシー...
-
メッセージボックスのOKボタ...
-
一つのTeratermのマクロで複数...
-
ExcelのVBA。public変数の値が...
-
Excel VBAからAccessマクロを実...
-
TERA TERMを隠す方法
-
ExcelVBAでPDFを閉じるソース
-
エクセルに張り付けた写真のフ...
-
EXCELのVBAでRange("A1:C4")を...
-
エクセルで別のセルにあるふり...
-
ソース内の行末に\\
-
マクロ実行時、ユーザーフォー...
-
特定文字のある行の前に空白行...
-
エクセルVBA
-
マクロの記録を使用したマクロ...
-
wordを起動した際に特定のペー...
-
ダブルクリックで貼り付けた画...
おすすめ情報