@PH
Nice !
Since it's only about values I'd say:
Sub Test() Dim T As Product Dim Arr(1 To 10) As Product Dim sn Dim i As Long sn = ActiveSheet.Range("A1:E10") For i = 1 To 10 With T .Code = sn(i, 1) .Description = sn(i, 2) .Cost = sn(i, 3) .Qty = sn(i, 4) .Retail = sn(i,5) End With Arr(i) = T Next I MsgBox Arr(2).Code MsgBox Arr(4).Description End Sub