How to read a string from a variant array ?



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)
MsgBox "Check: "+ CStr(MyArray(0))
MsgBox "Check: "+ CVar(MyArray(0))

How to get the string "help" from MyArr ?

JE McGimpsey

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))

Bill Renaud

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
(Someday you will have 2 variables that are supposed to be strings, but
are numbers, and addition will be performed instead.)

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question