Look: UBound(srtFilt) will always be 10, because you have dimensioned the array from 0 to 10.
If you are dedicated to the basic methodology you have here, I suggest making a Type having the 11 elements that you want, say
tpRecord, and make a
[u]d</u>y[u]namic</u> array of that type(Dim MyArray() As tpRecord).
Then, for each record, ReDim Preserve(MyArray) that array to add a new element.
When you are done, your array will now be sized in accordance with the number of records.
Code:
Type tpRecord
DwgNo As String
LineNo As String
DwgType As String
' Etc.
End Type
If you use this type to create an array, the way you would address each element would be
Code:
MyArray(indexNo).DwgNo = "Some value"