How to read a string from a variant array ?

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

Need a hint how to get a string from a variant array.

The code I'm using (Excel 2003):
Dim MyArray(5) as variant
MyArray = array("help",1,2,3,4)
note: LBound (MyArr) = 0

Now I don't get anything when using:
MsgBox "Check: "+ MyArray(0)
or
MsgBox "Check: "+ CStr(MyArray(0))
or
MsgBox "Check: "+ CVar(MyArray(0))

How to get the string "help" from MyArr ?
 
This works for me:

Dim MyArray As Variant
MyArray = Array("help", 1, 2, 3, 4)
MsgBox "Check: " + MyArray(0)
MsgBox "Check: " + CStr(MyArray(0))
MsgBox "Check: " + CVar(MyArray(0))
 
You don't need to specify the size of the array if you are going to use
the Array function to assign the values, since the compiler can figure
the size out at design time. You might need to use a REDIM later in the
program, if you add more values.

Public Sub Test()
Dim MyArray As Variant

MyArray = Array("help", 1, 2, 3, 4)

MsgBox "Check: " & CStr(MyArray(0))
End Sub

I also changed the "+" to a "&" in your MsgBox statement, since it is
better practice when using strings, even though it is technically not
required.
(Someday you will have 2 variables that are supposed to be strings, but
are numbers, and addition will be performed instead.)
 
Back
Top