• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ACCESS VBA フォーム複数条件)

ACCESS VBAフォームで複数条件を分岐させる方法

このQ&Aのポイント
  • ACCESSフォーム内のテキストボックスが空欄かどうかで条件分岐させる方法を教えてください。
  • テキストボックスの入力があるかどうかで、エクスポートするクエリを変更したいです。
  • VBAを使って、複数テキストボックスの入力値に基づいて条件分岐を行う方法をご教授ください。

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

  • ベストアンサー
  • piroin654
  • ベストアンサー率75% (692/917)
回答No.1

以下ではどうですか。一応、ボタンクリックの イベントで対応しています。 いくつか余分な処理をコメントアウトしていれてますが、 何かの参考にしてください。 それと、メッセージボックスが出るようになっていますが、 実際の時には必要なければコメントアウトするなり、 消すなりしてください。 (クエリを表示する方法はわかりますよね。) Private Sub コマンド0_Click() 'テキスト1にデータが入力されている場合 If Not IsNull(Me!テキスト1) Then   'テキスト2にデータがありテキスト3にデータがない場合   If Not IsNull(Me!テキスト2) And IsNull(Me!テキスト3) Then     MsgBox "クエリ2を出力します。"     'クエリ2を表示する処理をいれてください。たとえば、以下のように     'DoCmd.OpenQuery "クエリ2"   End If   'テキスト2にデータがなく、テキスト3にデータがある場合   If IsNull(Me!テキスト2) And Not IsNull(Me!テキスト3) Then     MsgBox "クエリ3を出力します"     'クエリ3を表示する処理をいれてください。たとえば、以下のように     'DoCmd.OpenQuery "クエリ3"   End If '  'テキスト2とテキスト3の両方にデータがある場合 '  If Not IsNull(Me!テキスト2) And Not IsNull(Me!テキスト3) Then '    MsgBox "両方ゲット" '    '何か適当な処理 '  End If '  'テキスト2もテキスト3もデータがない場合 '  If IsNull(Me!テキスト2) And IsNull(Me!テキスト3) Then '    MsgBox "両方なし" '    '何か適当な処理 '  End If 'テキスト1にデータが入力されていない場合 Else   MsgBox "出なしてください" End If End Sub ところで、表示したクエリのエクスポートはOffice Linksで Excelなりに出力するということでいいのでしょうか? それとも・・・・・・・直接・・・・・・・?いや何でもありません。

semi076
質問者

お礼

お礼が遅くなりましてすいませんでした。 やりたかった通りのコードをいただき、ありがとうございます。 とても助かりました。 ちなみに、選んだクエリは直接excel出力するつもりで、 DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "クエリ1" みたいな感じにしようと思っています。 この度は、どうもありがとうございました。

関連するQ&A