UniversoExcelForo

Respuesta a consultas.
Fecha de creación: 09.Abril.2012

Fundadores: Wibly,Tyno,Servando,Sakkar,Rosendo2,RMaximo,Railar,Mcoronel,Ioyama,Igtelo,Hugotron,Drochar,Dedos,Alberto,Adolfo

No se pueden hacer consultas de Excel o VBA por mensaje privado.
Utiliza el botón buscar del foro y te ahorras tiempo para obtener "ayuda".

No estás conectado. Conéctate o registrate

Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje [Página 1 de 1.]

1RESUELTO Macro para eliminar filas el 06/06/14, 06:55 am

macroexcel


Buenos días, tengo la siguiente macro para eliminar filas que me funciona.Para cada fila tengo que cambiar manualmente su valor para ejecutar. Lo que estoy buscando es como tener una macro que cuando acabe la fila 2, pase a la siguiente y así sucesivamente



ActiveSheet.Range("AZ2:AZ15000").FormulaR1C1 = "=SUMIF(R2C3:R2C51,""=1"",RC[-49]:RC[-1])"
    Do While Not IsEmpty(ActiveCell)
    If ActiveCell = 5 Then
    Selection.EntireRow.Delete
    Else
    ActiveCell.Offset(1, 0).Select
    End If
    Loop

2RESUELTO Re: Macro para eliminar filas el 06/06/14, 10:23 am

tyno


Hola macroexcel, bien venido al foro.
Paso un archivo de ejemplo, por lo que entiendo tu macro deber borrar las celdas que contengan el resultado de una formula que de  5.
En el archivo que te paso la macro borra las filas donde los resultados son 5.
Para ello la macro copia y pega como valores estos resultados, luego reemplaza los 5 por un texto de referencia "borrar_dato" y por último un bucle For Next combinado con el método Find busca ese texto y elimina la fila. 
Observa lo que hice y ve si puedes adaptarlo a tu archivo. Saludos
Archivos
ejemplo borrar.xlsm
No tienes los permisos para descargar los archivos.
(164 KB)

3RESUELTO Re: Macro para eliminar filas el 06/06/14, 01:41 pm

macroexcel


Hola tyno, gracias por tu repuesta, mi macro copia la suma de los valores absolutos de la fila 2($C$2:$AY$2) en las celdas AZ2:AZ15000, todas aquellas que hay un 5 la elimina. Después copio fila3 ($C$3:$AY$3) en AZ3:AZ15000. Lo que no sé es como se hace todo esto con la variable "fila", y para que sea muy rápido, ya que son muchas filas. Tu ejemplo al pasarlo a 2003, no veo la macro.

Gracias y saludos

4RESUELTO Re: Macro para eliminar filas el 06/06/14, 02:35 pm

tyno


La macro debe estar en el editor de macros de la Hoja1:

Private Sub CommandButton1_Click() 'borrar
On Error Resume Next
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual

Columns("A:A").Select
Selection.Copy
Range("B1").Select
Selection.PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
Columns("B:B").Replace What:=5, Replacement:="borrar_dato", lookat:=1


For a = 1 To Range("a1000000").End(xlUp).Row
rw = Range("b1:b1000000").Find("borrar_dato", lookat:=1).Row
If Err.Number = 91 Then Exit For
Cells(rw, 1).EntireRow.Delete
Next a
Application.Calculation = xlCalculationAutomatic
Columns("B:B") = ""
Application.ScreenUpdating = True


End Sub

Esta macro crea una columna auxiliar solo con valores de las formulas así se puede hallar y reemplazar el valor 5 por un artilugio "borrar_dato", luego la macro en una segunda instancia busca ese texto "borrar_dato" y elimina la fila.

Saludos

Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.