You actually had it almost correct the first time.
Your problem was you used "no" instread of false
-
If Field1 = False AND Field2 = false AND Field3 = false AND Field4 = false Then
-
[Subreport].Visible = False
-
Else
-
[Subreport].Visible = True
-
Endif
-
or
-
If not Field1 AND not Field2 AND not Field3 AND not Field4 Then
-
[Subreport].Visible = False
-
Else
-
[Subreport].Visible = True
-
Endif
-
-
If not Field1 AND not Field2 AND not Field3 AND not Field4 Then
-
[Subreport].Visible = False
-
Else
-
[Subreport].Visible = True
-
Endif
-
In the above 2 examples we are saying if ALL of the checkboxes are false then hide subreport
otherwise show it
alternatively
-
If Field1=true OR Field2=true OR Field3=true OR Field4=true Then
-
[Subreport].Visible = True
-
Else
-
[Subreport].Visible = False
-
Endif
-
or
-
If Field1 OR Field2 OR Field3 OR Field4 Then
-
[Subreport].Visible = True
-
Else
-
[Subreport].Visible = False
-
Endif
-
The final 2 examples says if ANY of the checkboxes are ticked then show subreport
otherwise hide it
AND's and OR's can be tricky to get your head around sometimes.
I find ANY when using OR and ALL when using AND are useful aids