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

回答編集履歴

2

推敲

2021/07/25 00:49

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -6,5 +6,5 @@
6
6
  target = Replace(target, "]", "_", , 1)
7
7
  target = Replace(target, "[", "[[]", , 1)
8
8
 
9
- sql = "SELECT フルパス, 閲覧数 FROM T_タイトル WHERE [フルパス] LIKE '%" & target & "';"
9
+ sql = "SELECT フルパス, 閲覧数 FROM T_タイトル WHERE [フルパス] LIKE '%" & target & "%';"
10
10
  ```

1

訂正

2021/07/25 00:49

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -1,9 +1,9 @@
1
1
  デバッグしてみました。
2
2
  どうやら`]`のエスケープがされないみたいですね。
3
3
  これはADOでもDAOでも同じでした。
4
- 検索対象も含めて違う文字に置換するか、ワイルドカード`%`に置き換えるとかでしょうか。
4
+ 検索対象も含めて違う文字に置換するか、任意の1文字(`_`)に置き換えるとかでしょうか。
5
5
  ```VBA
6
- target = Replace(target, "]", "%", , 1)
6
+ target = Replace(target, "]", "_", , 1)
7
7
  target = Replace(target, "[", "[[]", , 1)
8
8
 
9
9
  sql = "SELECT フルパス, 閲覧数 FROM T_タイトル WHERE [フルパス] LIKE '%" & target & "';"