Excel, como hago para buscar el nombre de una hoja

Tengo un libro en excel y estoy haciendo un botón que busca un nombre en una celda que va a ser el nombre de una de las hojas, después asigne ese nombre a una hoja, pero al momento de asignar busque si ese nombre se encuentra en una de las hojas, si lo encuentra salga un mensaje que ya se encuentra el nombre y no la cree.

1 respuesta

Respuesta
1
La siguiente rutina hace lo que necesitás. Está con negrita lo que tendrás que ajustar a tus referencias.
Si no existe crea la hoja ubicándola al final de todas (si querés que te quede delante quita lo que sigue después del ADD (en negrita)
Sub Creahojas()
For Each hojita In Sheets
If hojita.Name = Sheets("Hoja2").Range("A5") Then
MsgBox "Ya existe hoja con ese nombre"
End
End If
Next
ActiveWorkbook.Sheets.Add after:=Sheets(Sheets.Count)
ActiveSheet.Name = Sheets("Hoja2").Range("A5")
End Sub
Saludos
Elsa
¿Te está faltando un manual de programación? No dejes de visitar:
http://es.geocities.com/lacibelesdepunilla/manuales
Hola Elsa, gracias por tu ayuda.
Me disculpa, es que no formulé bien la pregunta, estoy buscando lo siguiente:
Tengo 2 hojas, una de los Datos y otra del Formato, en la hoja Datos tengo en una celda (A4) el Nombre de la nueva hoja que va a ser una copia del Formato, ya para ingresar los datos se como hacerlo, entonces, en la hoja Datos tengo un Botón que me Duplica la Hoja Formato, le cambia el nombre por el de la celda A4 y me coloca los datos donde yo quiero. Lo que busco es que cuando en la Celda A4, esté un nombre que ya se introdujo, me salga un mensaje que el Nombre ya se encuentra y no haga nada el botón.
Espero esta vez me haya explicado de qué es lo que quiero, Gracias y mil disculpas.
Copiá entonces solo las primeras líneas y colocalas al inicio de la rutina de tu botón.
Sub botón()
For Each hojita In Sheets
If hojita.Name = Sheets("Datos").Range("A4") Then
MsgBox "Ya existe hoja con ese nombre"
End
End If
Next
'sigue tu rutina del botón
End Sub
Pruébala y comentame.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas