回答編集履歴

2

マークダウンの間違いを修正

2018/06/10 17:16

投稿

hatena19
hatena19

スコア33620

test CHANGED
@@ -80,4 +80,4 @@
80
80
 
81
81
 
82
82
 
83
- `=IIf(Sum([Grupo] Like "*09")=0,"表示したいテキスト","")'
83
+ `=IIf(Sum([Grupo] Like "*09")=0,"表示したいテキスト","")`

1

追記

2018/06/10 17:16

投稿

hatena19
hatena19

スコア33620

test CHANGED
@@ -25,3 +25,59 @@
25
25
  実際のパラメータや条件が不明なので具体的な式は提示出ませんが、
26
26
 
27
27
  上記のことを応用すれば希望の条件で表示/非表示を切り替えることができるはずです。
28
+
29
+ 追記
30
+
31
+ ---
32
+
33
+ とりあえず現状のコードをエラーなく動作するようにするには、下記のコードで。
34
+
35
+ ただし、これが質問者さんの希望する結果かどうかは分かりません。
36
+
37
+
38
+
39
+ ```vba
40
+
41
+ Private Sub Report_Open()
42
+
43
+ Dim RS1 As DAO.Recordset
44
+
45
+
46
+
47
+ Set RS1 = CurrentDB.OpenRecordSet(Me.RecordSource)
48
+
49
+
50
+
51
+ RS1.FindFirst "[Grupo] Like '*09'"
52
+
53
+ If Not RS.NoMatch Then
54
+
55
+ Me.[titlePA].Visible = True 'ヘッダのコントロールです
56
+
57
+ Me.[E1-7].Visible = False 'フッターのコントロールです
58
+
59
+ End If
60
+
61
+   RS1.Close: Set RS1 = Nothing
62
+
63
+ End Sub
64
+
65
+ ```
66
+
67
+
68
+
69
+ RecordSource はテーブル名またはクエリ名の文字列でRecordsetではありません。
70
+
71
+ このコードでは、『コントロールは両方ともプロパティでVisibleになっています。』とのことですので、[titlePA]は常に表示されます。
72
+
73
+
74
+
75
+ [Grupo] Like "*09" のレコードが存在するかどうかで表示/非表示を切り替えることをVBAを使わずに実現するには、下記のように設定します。
76
+
77
+ レポートヘッダーまたはれポートフッターにテキストボックスを配置します。
78
+
79
+ コントロールソースを下記のよう設定します。
80
+
81
+
82
+
83
+ `=IIf(Sum([Grupo] Like "*09")=0,"表示したいテキスト","")'