Ya puedo eliminar las filas...pero quiero limitar las columnas

10/01/2008 - 00:44 por Mauricio | Informe spam
Hola al grupo,
Dim f As Integer
Application.ScreenUpdating = False
For f = [A65536].End(xlUp).Row To 1 Step -1
If Cells(f, 9) = "" Then Rows(f).Delete
Next
Application.ScreenUpdating = True
con este código he podido eliminar filas sin embargo... 2 preguntas
1. Necesito eliminar las filas donde existan números...he tratado con el
código anterior eto y no funciona -If Cells(f,9) ="##" ó If Cells(f,9)
=("##")...pero no funciona
2. Solo quiero eliminar estas filas desde la columna A hasta G ..por ej...

Agradezco la ayuda

Preguntas similare

Leer las respuestas

#1 Mauricio
10/01/2008 - 02:08 | Informe spam
Listo para un rango determinado de columnas...probe asi y funciona
Dim f As Integer
Application.ScreenUpdating = False
For f = [A65536:G65536].End(xlUp).Row To 1 Step -1
If Cells(f, 9) = "" Then Rows(f).Delete
Next
Application.ScreenUpdating = True


ahora me queda pendiente eliminar las filas cuando haya un número cualquier
en la celda especifica

"Mauricio" wrote:

Hola al grupo,
Dim f As Integer
Application.ScreenUpdating = False
For f = [A65536].End(xlUp).Row To 1 Step -1
If Cells(f, 9) = "" Then Rows(f).Delete
Next
Application.ScreenUpdating = True
con este código he podido eliminar filas sin embargo... 2 preguntas
1. Necesito eliminar las filas donde existan números...he tratado con el
código anterior eto y no funciona -If Cells(f,9) ="##" ó If Cells(f,9)
=("##")...pero no funciona
2. Solo quiero eliminar estas filas desde la columna A hasta G ..por ej...

Agradezco la ayuda
Respuesta Responder a este mensaje
#2 Héctor Miguel
13/01/2008 - 07:57 | Informe spam
hola, Mauricio !

1) el cambio que haces en el bucle For...Next
de: -> For f = [A65536].End(xlUp).Row To 1 Step -1
a: -> For f = [A65536:G65536].End(xlUp).Row To 1 Step -1
OJO: sigue buscando cual es la ultima fila no vacia pero... (solo) de la columna A

2) no es claro el "por que"... si solo quieres buscar en 7 columnas (A:G), "consultas" en la columna 9
-> If Cells(f, 9) = "" Then Rows(f).Delete

3) tampoco es claro si la condicionante es "a una de dos"... o ambas
a) vacios en la columna 9 (o 7 ???): -> If Cells(f, 9) = ""... (etc.)
b) cualquier numero en cada fila (pero) en las columnas A:G

4) para conocer si existe alguna celda CON NUMEROS por cada fila que va recorriendo el bucle...
puedes usar la funcion de hoja de calculo =contar(...) que solo cuenta numeros y omite celdas con texto

5) resulta mas "agil" (p.e.) "armar" un solo bloque/grupo/union/... del rango con las celdas/filas "a eliminar"
que ir eliminando "fila por fila" (aun por codigo dentro del bucle For...Next)

te paso un ejemplo con la propuesta del punto 5... solo decide si las condiciones son alguna o ambas
-> en el codigo de la propuesta decide si la condicion es Or ("alguna" como va) o la cambias por And ("ambas")
los resultados podrian ser muy distintos... te sugiero probar con una copia de tus datos :))

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

Sub Elimina_Vacios_y_numeros()
Dim Fila As Long, Rango As Range
For Fila = 1 To Cells.Find("*", Range("a1"), xlValues, xlWhole, xlByRows, xlPrevious).Row
If Range("g" & Fila) = "" _
Or Application.Count(Range("a" & Fila).Resize(, 7)) Then _
Set Rango = Union(IIf(Rango Is Nothing, Range("a" & Fila), Rango), Range("a" & Fila))
Next
If Not Rango Is Nothing Then Rango.EntireRow.Select: Set Rango = Nothing
End Sub

__ la consulta original __
Listo para un rango determinado de columnas...probe asi y funciona
Dim f As Integer
Application.ScreenUpdating = False
For f = [A65536:G65536].End(xlUp).Row To 1 Step -1
If Cells(f, 9) = "" Then Rows(f).Delete
Next
Application.ScreenUpdating = True
ahora me queda pendiente eliminar las filas cuando haya un numero cualquier en la celda especifica



__ la consulta anterior __
Dim f As Integer
Application.ScreenUpdating = False
For f = [A65536].End(xlUp).Row To 1 Step -1
If Cells(f, 9) = "" Then Rows(f).Delete
Next
Application.ScreenUpdating = True
con este codigo he podido eliminar filas sin embargo... 2 preguntas
1. Necesito eliminar las filas donde existan numeros...


he tratado con el codigo anterior esto y no funciona -If Cells(f,9) ="##" o If Cells(f,9) =("##")
2. Solo quiero eliminar estas filas desde la columna A hasta G ..por ej...
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida