Condición VBA "Si la hoja existe" Entonces...

Apprenti -  
ccm81 Mensajes publicados 11033 Estado Miembro -
Hola,

En mi macro, necesito verificar si la hoja "NOM" existe antes de continuar con mi procedimiento, pero no sé cómo se escribe eso en VBA, ¿alguien tendría una respuesta?

¡Gracias!

Configuración: Windows XP / Internet Explorer 6.0

5 respuestas

Patrice33740 Mensajes publicados 8400 Fecha de registro   Estado Miembro Última intervención   1 783
 
Hola,

No es necesario hacer un bucle para buscar si la hoja existe,
solo hace falta hacer esto:

Function Feuille_Existe(ByVal Nom_Feuille As String) As Boolean Dim Feuille As Excel.Worksheet On Error GoTo Feuille_Absente_Error Set Feuille = ActiveWorkbook.Worksheets(Nom_Feuille) On Error GoTo 0 Feuille_Existe= True Exit Function Feuille_Absente_Error: Feuille_Existe= False End Function

y para usarlo :

If Feuille_Existe("Feuil1") Then
o

If Not Feuille_Existe("Feuil1") Then
6
Marc
 

Hola, Patrice

Muchas gracias, su función para probar

si existe una hoja, funciona perfectamente

Es exactamente lo que necesitaba

He intentado adaptarlo para un funcionamiento directamente en la macro sin éxito

pero no es muy importante, usar una función es al final mucho

más práctico

Gracias de nuevo

Atentamente

0
ccm81 Mensajes publicados 11033 Estado Miembro 2 434
 

Hola a todos

Un poco más sencillo para hoja_existe

Función Pública HojaExiste(nomf Como String) Como Boolean
On Error Resume Next
HojaExiste = No (Hojas(nomf) Es Nada)
Fin Función

Saludos

0