Ayuda con Macro en Excel

lvaro
16 de Marzo del 2004
Estoy intentando cambiar el nombre de la pestaña, desde una macro, si lo haga de la siguiente manera no hay problema:
NombrePestaña.Name = "Enero"

En cambio, lo que quiero hacer es que el mes lo coga de un listbox o de una variable, y no hay manera.
NombrePestaña.Name = ListBox1.Text

o de esta otro forma:

dim nombre as string
nombre = listbox1.text
NombrePestaña.Name = nombre

Es una cosa tan sencilla y lo problemas que me está dando.

Un saludo Álvaro.


en?
16 de Marzo del 2004
El único error que se me ocurre es que tengas el ListIndex=-1
porque he probado las tres formas que comentas y me funcionó.

¿cuál es el error que te da?

lvaro
16 de Marzo del 2004
Hola enço. Tengo lo siguiente:
Private Sub ListBox1_Click()
ListBox1.AddItem "Enero"
ListBox1.AddItem "Febrero"
ListBox1.AddItem "Marzo"
ListBox1.AddItem "Abril"
ListBox1.AddItem "Mayo"
ListBox1.AddItem "Junio"
ListBox1.AddItem "Julio"
ListBox1.AddItem "Agosto"
ListBox1.AddItem "Septiembre"
ListBox1.AddItem "Octubre"
ListBox1.AddItem "Noviembre"
ListBox1.AddItem "Diciembre"

Sheet1.Name = ListBox1.Text
End Sub

Y me da un error diciendo:
Run-time error '1004'
Application-defined or object-defined error.

Llevo ya varios días mareao con esto y no se porque me sale ese error.
Gracias. Un saludo.

en?
16 de Marzo del 2004
el problema es lo que te he comentado, ListBox1.ListIndex = -1, por tanto .Text = "", y lógicamente no te deja asignar un string vacío como nombre de hoja. Antes debes tener seleccionado un elemento de la lista, ya sea manualmente, o después de haberlo cargado escríbele:

ListBox1.ListIndex = 0

Pero tienes otro problema, que cargándolo en su evento _Click(), cada vez que se seleccione un elemento se te volverá a cargar. Deberías solucionarlo.