- ベストアンサー
ACCESS VBAフォームで複数条件を分岐させる方法
- ACCESSフォーム内のテキストボックスが空欄かどうかで条件分岐させる方法を教えてください。
- テキストボックスの入力があるかどうかで、エクスポートするクエリを変更したいです。
- VBAを使って、複数テキストボックスの入力値に基づいて条件分岐を行う方法をご教授ください。
- みんなの回答 (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なりに出力するということでいいのでしょうか? それとも・・・・・・・直接・・・・・・・?いや何でもありません。
お礼
お礼が遅くなりましてすいませんでした。 やりたかった通りのコードをいただき、ありがとうございます。 とても助かりました。 ちなみに、選んだクエリは直接excel出力するつもりで、 DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "クエリ1" みたいな感じにしようと思っています。 この度は、どうもありがとうございました。