Quite sure it isn't a problem with arrays as I also get the error
(again intermittently) with this data type:
Public Type TypeTRA
TypeID As Byte
Ref As String * 8
Date As Date
StockCode As String * 20
Qty As Integer
LocFrom As String * 9
LocTo As String * 9
End Type
The value returned by Len is not a problem, it is the same whether
the code works or not.
I'm inclined to believe that there is some internal VBA bug that
corrupts the data type structure in some way.