Ejecutar una macro si la celda no está vacía

DJ333 Mensajes publicados 5 Estado Miembro -  
DJ333 Mensajes publicados 5 Estado Miembro -
Bonjour
Estoy comenzando con macros... Quiero que al hacer clic en un botón, las macros se ejecuten solo si una celda indicada está completa. Pero mi código no funciona, responde "falta una condición if...
¿Cómo hacerlo? ¡Gracias de antemano!

Sub crefeuille1()
' crefeuille1 Macro
If Range("C2") = "" Then
Sheets("Revue type").Select
Sheets("Revue type").Copy After:=Sheets(2)
Set MySheet = ActiveSheet
With MySheet
.Name = Worksheets("Trame").Range("e2")
End If
End With
End Sub
Sub crefeuille2()
'
' crefeuille2 Macro
'
If Range("C3") = "" Then
Sheets("Revue type").Select
Sheets("Revue type").Copy After:=Sheets(2)
Set MySheet = ActiveSheet
With MySheet
.Name = Worksheets("Trame").Range("e3")
End If
End With
End Sub

3 respuestas

via55 Mensajes publicados 14387 Fecha de registro   Estado Miembro Última intervención   2 755
 
Buenas noches

1° tu macro solo se ejecuta si la celda C2 está vacía
si quieres que solo se ejecute cuando C2 esté llena, debes escribir If Range("C2") <>"" Then

2° El End if debería estar después del End with

3° With no es útil a menos que haya múltiples instrucciones que aplicar a la misma área para evitar tener que repetir, aquí solo tienes una instrucción, por lo que puedes simplificar reemplazando
With MySheet
.Name = Worksheets("Trame").Range("e2")
End with
por
ActiveSheet.Name = Worksheets("Trame").Range("e2")

Cordialmente
Vía

--
"La imaginación es más importante que el conocimiento." A. Einstein
0