Hola @RubenDario
Faltaría que en cada línea dentro del With le pongas un punto al inicio
With Hoja1
.Range("B6:B18,F6:F18,J6:J18").Select
.Range("J6").Activate
With Selection.Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With
.Selection.ClearContents
.Range("A1").Select
End With
Sin embargo, lo que yo haría (si fuese mi proyecto)... te ofrezco varias soluciones.
No asignarlo a una combinación de teclas, mejor ponerlo en una forma o botón.
Modificar tu libro con la app Custom UI Editor o similar y adicionar un botón en el Ribbon, estará visible solo cuando el libro esté activo.
Al principio de tu código pondría algo como: If Thisworkbook.Name <> ActiveWorkbook.Name Then Exit sub
Por
DiegoPC, · publicado
Hola a todos,esta macro me da problemas de compilacion,alguien me podria indicar la solucion?
La intencion es que solo me borre las filas que sean diferentes a la condicion
Gracias a todos
Sub Macro1()
'
' Macro1 Macro
' Macro grabada el 21/11/2012 por Paco
'
'
Dim Rango As Range, Fila As Long, ÚltimaFila As Long
Application.ScreenUpdating = False
ÚltimaFila = 1
For Fila = ActiveSheet.UsedRange.Row To ÚltimaFila
Application.StatusBar = "Procesando fila " & Fila & " / " & ÚltimaFila
If (Range("I" & Fila).Value <> TRANSPORTES Y LOGISTICA SORIA, S.L.) Then en esta linea me da el error
If Rango Is Nothing = True Then
Set Rango = Rows(Fila)
Else
Set Rango = Application.Union(Rango, Rows(Fila))
End If
End If
Next Fila
If Rango Is Nothing = False Then
Rango.Select
Selection.Delete
ActiveCell.Select
End If
Application.StatusBar = "Listo"
Application.ScreenUpdating = True
End Sub
Gracias a todos