回答編集履歴

1

訂正

2020/02/18 01:58

投稿

ttyp03
ttyp03

スコア17000

test CHANGED
@@ -11,3 +11,45 @@
11
11
 
12
12
 
13
13
  ```
14
+
15
+
16
+
17
+ ---
18
+
19
+ 括弧の数はコピペミスですかね。失礼しました。
20
+
21
+ [MSのドキュメント](https://docs.microsoft.com/ja-jp/office/client-developer/access/desktop-database-reference/filter-property-ado)を見ると、以下のようにあります。
22
+
23
+
24
+
25
+ > AND と OR の間に優先順位はありません。句はかっこでグループにまとめることができます。ただし、次のように、 OR で句を結合してできた句のグループを、 AND を使ってさらに別の句と結合することはできません。
26
+
27
+
28
+
29
+ この条件に合致していそうです。
30
+
31
+
32
+
33
+ また[同じような問題で困っている人のページ](https://okwave.jp/qa/q8322811.html)ではFilerを並べて書くことで解決しています。
34
+
35
+ 次のように書くことで解消できないでしょうか。
36
+
37
+
38
+
39
+ ```VBA
40
+
41
+ Sub Main()
42
+
43
+ With New TableOperator
44
+
45
+ Set .InputTable = ThisWorkbook.Sheets("DATA").ListObjects(1)
46
+
47
+ .Filter = "最新所属名 = 'ブロックA'"
48
+
49
+ .Filter = "([残業時間] >= 40 AND [残業時間] <= 45) OR ([年間残業時間] >= 350 AND [年間残業時間] <= 360) OR [総残業時間] >= 700"
50
+
51
+ End With
52
+
53
+ End Sub
54
+
55
+ ```