質問するログイン新規登録

回答編集履歴

1

訂正

2018/03/15 08:50

投稿

ttyp03
ttyp03

スコア17002

answer CHANGED
@@ -1,15 +1,18 @@
1
+ 検索条件のところ良く見てなかったので適当な回答になってましたので訂正します。
2
+
1
3
  SQL文に検索条件を組み込みましょう。
2
- SQL自体はこんな感じで(途中まで
4
+ SQL自体はこんな感じで(TextBox1と2を指定した場合
3
5
  ```SQL
4
6
  SELECT 顧客コード,姓,名,住所1,住所2,電話番号1,電話番号2
5
7
  FROM 顧客マスター
6
- WHERE 顧客コード=検索コード OR 姓 LIKE '%検索性%'
8
+ WHERE 姓 LIKE '%検索性%' OR 電話番号1='検索番号' OR 電話番号2='検索番号'
7
9
  ```
8
10
  VBA側はこんな感じ。
9
11
  ```VBA
10
12
  strSQL = "SELECT 顧客コード,姓,名,住所1,住所2,電話番号1,電話番号2 FROM 顧客マスター "
11
- strSQL = strSQL & "WHERE 顧客コード=" & TextBox1.Value & " OR LIKE " & "'%" & TextBox2.Value & "%'"
13
+ strSQL = strSQL & "WHERE 姓 LIKE '%" & TextBox1.Value & "%' OR 電話番号1='" & TextBox2.Value & "' OR 電話番号2='" & TextBox2.Value & "'"
12
14
  ```
15
+ 姓は部分一致、電話番号は完全一致にしていますが、仕様にあわせて修正してください。
13
- 必ず全条件が必ではないはずですので、必要な分だけ条件を追加しましょう。
16
+ またTextBox1と2が必ず指定されるわけではないはずですので、必要な分だけ条件を追加しましょう。
17
+ 電話番号が数字型なのか文字型なのかわからないので、とりあえず文字型としています。
14
- 条件がORなのかANDなのかはわからないので、仕様にあわせてください。
18
+ 条件がORなのかANDなのかはわからないので、仕様にあわせてください。
15
- このようにして固定ではないSQL文を動的SQLといいます。