Glad you seem to have found it. 
I have spotted what I think is an error in your published code:
Code:
If strFilter3 = "" Then
strFilter3 = "Product_Code = " & stDocName3
Else
strFilter3 = strFilter3 & " or Product_Code =" & stDocName3 & "'"
End If
Next intIndex
Assuming that Product_Code is numeric then the extra & "'" is not needed at the end of the fourth line - in fact it may cause an error.
Now here's my effort. It's untested! I think that Access DoCmd understands the IN() construct - SQL certainly does. In essence you can code something like: Plant_Name IN('Lilesville','Conley'). Also I have used the concatenation with null propagation - it's symbol is a plus sign. It only works with variants but what it does is that if either of the variables each side of the plus sign is null then the result is null - very useful for first time conditions. In every case the comma is omitted the first time round as varString is null.
Code:
Dim varString As Variant
'creates WHERE clause for Plant_Name field (strFilter).
varString = Null
For Each intIndex In Plant.ItemsSelected
varString = varString + "," & "'" & Plant.Column(1, intIndex) & "'"
Next
If Not IsNull(varString) Then strfilter = "Plant_Name IN(" & CStr(varString) & ")"
'creates WHERE clause for Type_Test field (strFilter2).
varString = Null
For Each intIndex In Type_Test.ItemsSelected
varString = varString + "," & "'" & Type_Test.Column(0, intIndex) & "'"
Next
If Not IsNull(varString) Then strFilter2 = "Type_Test In(" & CStr(varString) & ")"
'creates WHERE clause for Product_Code field (strFilter3).
varString = Null
For Each intIndex In Product_Code.ItemsSelected
varString = varString + "," & Product_Code.Column(1, intIndex)
Next
If Not IsNull(varString) Then strFilter3 = "Product_Code IN(" & CStr(varString) & ")"
'creates WHERE clause for Year_Produced field (strFilter4).
varString = Null
For Each intIndex In Year_Produced.ItemsSelected
varString = varString + "," & "'" & Year_Produced.Column(0, intIndex) & "'"
Next
If Not IsNull(varString) Then strFilter4 = "Year_Produced In(" & CStr(varString) & ")"