Prueba modificando la longitud del vector colocando un limite o vas asignando a medida que se mueve el recorset...
Dim vec(99) As String
o
Dim vec() As String
Código:
Do Until RecSQL.EOF
Var = ""
Var = Var & " " & RecSQL.Fields(0) & " " & RecSQL.Fields(1) & " " & RecSQL.Fields(2) & " " & RecSQL.Fields(3) & " " & RecSQL.Fields(4)
List2.AddItem Var,i
ReDim vec(i)
Vec(i)= RecSQL.Fields(2)
i=i+1
RecSQL.MoveNext
Loop