Para lo que quieres deberías leer acerca de ReDim Preserve
Siguiendo con el ejemplo anterior
Código vb:
Ver originalOption Explicit
Private Type VARIABLE
cadena As String
entero1 As Integer
entero2 As Integer
End Type
Dim matriz1() As VARIABLE
Private Sub Form_Load()
ReDim matriz1(200) As VARIABLE
Dim f As Integer
For f = 0 To 200
matriz1(f).cadena = "xxx"
matriz1(f).entero1 = 111
matriz1(f).entero2 = 222
Next f
ReDim Preserve matriz1(400) As VARIABLE
For f = 201 To 400
matriz1(f).cadena = "yyy"
matriz1(f).entero1 = 333
matriz1(f).entero2 = 444
Next f
MsgBox UBound(matriz1)
End Sub
Antes de Añadir elementos a la Matriz, debes ver si Ubound esta ocupado y si es así con el ReDim Preserve añadirle los elementos que necesites.