As a start you can just declare a "dynamic" array in VB like that :

dim DynArray() as string


and each time you want to add an element to that array , you do it this way :

Redim Preserve DynArray (x)
DynArray(x-1) = "Hello" & x

as for declaring variables with new names at runtime ...
I dont know if it is doable in VB ... Not directly anyway ... I rather not say something of which I am not sure ...
Hope that helped