Visual Basic para Aplicaciones - Convertir una cadena en nombre de variable

Life is soft - evento anual de software empresarial
 
Vista:

Convertir una cadena en nombre de variable

Publicado por franco lacamoire (7 intervenciones) el 02/06/2008 13:19:36
Saludos a todos, estoy trabajando con VBA para Excel pero se que mi duda tranquilamente me la puede aclarar alguien que maneje VB6 (no VB.NET):

Tengo un array de strings:

Dim miArray() As Variant

miArray = Array("miControl1", "miControl2", "miControl3", .....)

Y quiero usar cada elemento del array (string) como nombre de una variable de objeto en una estructura For Next (donde se realizara la asignacion del objeto a dicha variable):

Dim i As Integer

For i = 0 To 10

Set miArreglo(i) = ActiveSheet.OLEObjects.Add(ClassType:="Forms.Optio nButton.1")

Next i

Pero obiamente esto no funciona ya que miArray(i) es una cadena de caracteres y no el nombre de una variable!!!!!

Como hago para solucionar esto???, se puede hacer la signacion de multiples objetos a multiples variables de objetos (llamadas de diferentes maneras) en estructuras de bucle???? como lo puedo hacer???

Gracias por la ayuda, saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Convertir una cadena en nombre de variable

Publicado por JuanC (243 intervenciones) el 02/06/2008 21:30:15
fijate si esto te sirve...

Option Explicit
Option Base 1

Sub test()
Dim i%
Dim miArreglo(10) As Object
For i = 1 To 10
Set miArreglo(i) = ActiveSheet.OLEObjects.Add(ClassType:="Forms.OptionButton.1")
Next
End Sub

Saludos desde Baires, JuanC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar