Código de Visual Basic para Aplicaciones - Eliminar filas segun valor de celda

Imágen de perfil
Val: 131
Bronce
Ha mantenido su posición en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Eliminar filas segun valor de celdagráfica de visualizaciones


Visual Basic para Aplicaciones

Publicado el 12 de Agosto del 2019 por Héctor Madriz (3 códigos)
1.146 visualizaciones desde el 12 de Agosto del 2019
Eliminar filas según valor de celda:
Celdas vacías
Celdas con valor (= <> <= >= < >) ValorCel
Celdas que contienen error #N/A, #¡DIV/0!, #¡REF!, etc

1.0

Publicado el 12 de Agosto del 2019gráfica de visualizaciones de la versión: 1.0
1.147 visualizaciones desde el 12 de Agosto del 2019
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

Podría utilizar Len() o WorksheetFunction.CountA() para evaluar si la celda esta vacía sin embargo ambas consideran los espacios en blancos (" ") como contenido por lo cual sus resultados podrían considerarse imprecisos para este fin.

Por Ejemplo:

ValorCel=” ”
Len(ValorCel) la longitud seria 4 por cual no se considera vacío
WorksheetFunction.CountA(ValorCel) retorna 1 por cual no se considera vacío

Por el contrario:
Trim(ValorCel) la longitud es 0 por lo cual se considera vacío
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Sub EliminarFilas_ValorCel() 'Eliminar las filas donde la celdaX es igual a ValorCel (= <>)
    ColumCel = 1: ValorCel = ""
    For FilaCel = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row To 1 Step -1 ' Desde la ultima fila hasta la Fila 1
        If Not IsError(Cells(FilaCel, ColumCel).Value) Then _
           If Trim(Cells(FilaCel, ColumCel).Value) = Trim(ValorCel) Then Rows(FilaCel).Delete
    Next
End Sub
 
Sub EliminarFilas_ValorCelN()  'Eliminar las filas donde la celdaX es mayor o igual a ValorCel (>= <= > <)
    ColumCel = 1: ValorCel = 4 ' ValorCel debe ser numerico
    For FilaCel = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row To 1 Step -1 ' Desde la ultima fila hasta la Fila 1
        If Not IsError(Cells(FilaCel, ColumCel).Value) Then _
           If IsNumeric(Cells(FilaCel, ColumCel).Value) And Cells(FilaCel, ColumCel).Value >= ValorCel Then Rows(FilaCel).Delete
    Next
End Sub
 
Sub EliminarFilas_ErrCell() 'Eliminar las filas donde la celdaX contiene un error  #N/A, #¡DIV/0!, #¡REF!, etc
    ColumCel = 1
    For FilaCel = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row To 1 Step -1 ' Desde la ultima fila hasta la Fila 1
        If IsError(Cells(FilaCel, ColumCel).Value) Then Rows(FilaCel).Delete
    Next
End Sub



Comentarios sobre la versión: 1.0 (0)


No hay comentarios
 

Comentar la versión: 1.0

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s5471