ELIMINAR FILAS EN BLANCO CON RANGO DE FILAS DEFINIDAS
publicado
Buenos dias a todos,
Tengo una macro la cual hace lo siguiente:
1. Selecciona registros de la fila 321 a la 470 y los copia desde la fila 500 en adelante, esto con el fin de poderlos trabajar.
2. Rutina para borrar los registros en blanco, o sea tomar los registros de la posición 500 a la 649.
Problema: No me borra los registros o filas en blanco, ya que no se como definir el rango y me lo pueda tomar la rutina que tengo.
Relaciono la Macro:
Sub Macro4()
'
' Macro4 Macro
'
' Desabilita los campos de Nombre Px y Tratamiento
Application.EnableEvents = False
Application.ScreenUpdating = False
ActiveSheet.Unprotect
Cells.Select
Range("C4").Activate
Selection.EntireColumn.Hidden = False
Rows("321:470").Select
Selection.Copy
Rows("500:500").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
' Habilita campos de Nombre Px y Tratamientos
Application.ScreenUpdating = True
Application.EnableEvents = True
Range("A500").Select 'Eliminar Filas en Blanco
Dim SeleccionActual
'Obtenemos la seleccion actual de filas
Set SeleccionActual = Application.Selection -'No se como definir el rango de la 500 a la 649
'Navegamos por cada una de las filas de la seleccion
For contadorFilas = 1 To SeleccionActual.Rows.Count Step 1
'Si la fila en que me encuentro esta completamente vacia (cada celda)
If Application.CountA(SeleccionActual.Rows(contadorFilas)) = 0 Then
'Elimino la celda completa
SeleccionActual.Rows(contadorFilas).EntireRow.Delete
End If
Next
End Sub
Les agradeceria su colaboración
Featured Replies
Archivado
Este tema está ahora archivado y está cerrado a más respuestas.
Buenos dias a todos,
Tengo una macro la cual hace lo siguiente:
1. Selecciona registros de la fila 321 a la 470 y los copia desde la fila 500 en adelante, esto con el fin de poderlos trabajar.
2. Rutina para borrar los registros en blanco, o sea tomar los registros de la posición 500 a la 649.
Problema: No me borra los registros o filas en blanco, ya que no se como definir el rango y me lo pueda tomar la rutina que tengo.
Relaciono la Macro:
Sub Macro4()
'
' Macro4 Macro
'
' Desabilita los campos de Nombre Px y Tratamiento
Application.EnableEvents = False
Application.ScreenUpdating = False
ActiveSheet.Unprotect
Cells.Select
Range("C4").Activate
Selection.EntireColumn.Hidden = False
Rows("321:470").Select
Selection.Copy
Rows("500:500").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
' Habilita campos de Nombre Px y Tratamientos
Application.ScreenUpdating = True
Application.EnableEvents = True
Range("A500").Select
'Eliminar Filas en Blanco
Dim SeleccionActual
'Obtenemos la seleccion actual de filas
Set SeleccionActual = Application.Selection -'No se como definir el rango de la 500 a la 649
'Navegamos por cada una de las filas de la seleccion
For contadorFilas = 1 To SeleccionActual.Rows.Count Step 1
'Si la fila en que me encuentro esta completamente vacia (cada celda)
If Application.CountA(SeleccionActual.Rows(contadorFilas)) = 0 Then
'Elimino la celda completa
SeleccionActual.Rows(contadorFilas).EntireRow.Delete
End If
Next
End Sub
Les agradeceria su colaboración