Here's an even better way...
Create a new module and pate this in...
Function AddressBlock$(Addr1, Addr2, Addr3, Addr4, Addr5, Addr6, Addr7)
Dim A1$, A2$, A3$, A4$, A5$, A6$, A7$, CR$
CR$ = Chr(13) & Chr(10
A1$ = IIf(ISB(Addr1), "", Addr1 & CR$)
A2$ = IIf(ISB(Addr2), "", Addr2 & CR$)
A3$ = IIf(ISB(Addr3), "", Addr3 & CR$)
A4$ = IIf(ISB(Addr4), "", Addr4 & CR$)
A5$ = IIf(ISB(Addr5), "", Addr5 & CR$)
A6$ = IIf(ISB(Addr6), "", Addr6 & CR$)
A7$ = IIf(ISB(Addr7), "", Addr7 & CR$)
AddressBlock = A1$ & A2$ & A3$ & A4$ & A5$ & A6$ & A7$ 'Concatenate the strings.
End Function
Function ISB(V) As Integer
If IsNull(V) Or V = "" Then ISB = True Else ISB = False
End Function
NOTE: This is for SEVEN Address fields so you will need to adjust it to the number of fields you require.
Creat a text box in your report and resize it to the the approx size of ALL your address fields. In th conttolsource put....
=AddressBlock ([AddrFieldName1],[AddrFieldName2],[AddrFieldName3],[County],[Zip] etc)
The number of fields MUST match the number of fields in the above function, seven in this example.
This method is MUCH neater than setting several fields to can shrink as there will always be a gap an uneven gap in between each depending on which are null.
HTH
Kevin M