
VBA初心者なのですが、あるサンプルデータを参考に顧客管理のフォームを作成しています。
検索条件が未入力なら全リストを、条件入力すれば検索・抽出したいのです。
未入力の場合は全リストが表示されていますが、条件入力すると真っ白になります・・・
リストボックスで表示するようにしています。
なぜ出来ないのか、どなたか詳しく教えてください。宜しくお願いします。
______________________________________
Private Sub subSetFiler()
Dim strWhere As String
'変数の初期設定
strWhere = ""
'フリガナを部分一致で検索
If IsNull(Me![txtFurigana]) <> True Then
If strWhere <> "" Then
strWhere = strWhere & " And"
End If
strWhere = strWhere & "tm01_Kokyaku.tm01_Furigana Like'*" & Me![txtFurigana] & "*'"
End If
'物件を部分一致で検索
If IsNull(Me![txtBukken]) <> True Then
If strWhere <> "" Then
strWhere = strWhere & " And"
End If
strWhere = strWhere & "tm01_Kokyaku.tm01_Bukken Like '*" & Me![txtBukken] & "*'"
End If
'Where文字列の加工
If strWhere <> "" Then
strWhere = "Where" & strWhere
End If
'リストボックスノ値集合ソース更新
Me![1stKokyakuCode] = Null
Me![1stKokyakuCode].RowSource = "SELECT [tm01_Kokyaku].[tm01_Code] AS コード, [tm01_Kokyaku].[tm01_KokyakuName] AS 顧客名, [tm01_Kokyaku].[tm01_Bukken] AS 物件名, [tm01_Kokyaku].[tm01_Gouchi] AS 号地, [tm01_Kokyaku].[tm01_Address1] AS 住所, [tm01_Kokyaku].[tm01_Tel] AS 電話番号 " & _
"FROM tm01_Kokyaku" & _
strWhere & " " & _
"ORDER BY [tm01_Kokyaku].[tm01_Bukken], [tm01_Kokyaku].[tm01_Gouchi]"
Me![1stKokyakuCode].Requery
No.1ベストアンサー
- 回答日時:
半角スペースを確認してみてください。
例えば、以下など
" And" → " And "
Like'* → Like '*
"Where" → " Where "
"ORDER → " ORDER
No.2
- 回答日時:
机上デバックで気づいた点
01.文法を見ると、SQL文(Select区部分)とstrWhere句の間に半角スペースがありません
>"FROM tm01_Kokyaku" & _
>strWhere & " " & _
この文法方式でいえば以下のように記載しないといけないはずなのですが
"FROM tm01_Kokyaku" & _
" " & strWhere & " " & _
01でだめなら試しにSQL文(Select区部分)とstrWhere句を1つの変数値に代入し
そのSQL文ソースをクエリーで単発実行してみる
それで動作しないなら、SQL文が間違っている事がわかる
それで動作するなら、リストボックスのプロパティーを疑う
>この文法方式でいえば以下のように記載しないといけないはずなのですが
>"FROM tm01_Kokyaku" & _
>" " & strWhere & " " & _
上記の方法と半角スペースの入力ミスでした。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Excel(エクセル) VBAについて 3 2022/06/19 18:19
- Visual Basic(VBA) ユーザーフォームの表示を追加したい 2 2023/03/26 23:18
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) InputBoxでキャンセルボタンを押したらファイル自体を閉じたい 3 2022/07/23 17:52
- Visual Basic(VBA) VBAの繰り返し処理について教えてください。 3 2022/08/02 13:21
- Visual Basic(VBA) VBAで日付入力しているのですが 4 2023/03/02 11:25
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたいの続き 5 2023/01/24 00:16
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESS VBA でのエラー解決の根...
-
access2021 VBA メソッドまたは...
-
Accessのクエリで、replace関数...
-
Microsoft 365 Basic サブスク...
-
Access Error3061 パラメータが...
-
Arduinoで温湿度と時刻を1分ご...
-
access2021 強制終了してしまう
-
Access 登録ボタンからサブフォ...
-
列が255以上のCSVファイルをAcc...
-
Accessのクエリの結果を、既存...
-
Accessでフォームに自動入力し...
-
CSVファイルの「0落ち」にVBA
-
Microsoft365にAccessってあり...
-
accessでlaccdbファイルが削除...
-
access2019 チェックボックスと...
-
Accessでレポートを印刷する時...
-
Excelを開く時と閉じる時に一度...
-
Accessで独自メニューバーまた...
-
アクセス レポートを開いたとき...
-
Access DAOのExecuteメソッドの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
『PHP』 MAMPで$_SERVER["REMOT...
-
変数名での条件分岐は可能でし...
-
データベースに"や'を保存できない
-
(int)キャストとintvalの違い
-
PHPでGDを使用しての折れ線グラ...
-
マイコンビルドエラー修正方法...
-
return
-
GETからPOSTに変更
-
htmlspecialcharsについて(セ...
-
サイトに表示する文字に\\が入...
-
不明なコマンドです("FROM")。...
-
パソコンにコンポーザーをイン...
-
オペランドが足りませんとコメ...
-
Access2010 「演算子がありませ...
-
【ExcelVBA】sheet作成時にマク...
-
Excel2010でふりがなが漢字にな...
-
エクセル/マクロ Exit Subが実...
-
VBA シートの切り替えができな...
-
エクセルの文字間スペースを入...
-
AUTOCAD 2010でdwlファイルの場...
おすすめ情報