Saltar al contenido

Recommended Posts

publicado

 

Hola

 

Agradezco de antemano cualquier gestión....

Tengo un código que le digo que las facturas nuevas me las añado en otro Listado..

están identificadas con la palabra AÑADIR....el problema es que no sé como decirle

que me las empiece  a escribir en la última línea del listado existente

en el ejemplo.: manualmente le digo que me las empiece a poner a partir de la fila 3067...

 

 

Sub AÑADIRNUEVAS()

Application.Calculation = xlManual
    
    Dim i, j As Integer
        j = 3067 'DONDE EMPIEZA A ESCRIBIR
    For i = 2 To 8000 ' DONDE EMPIEZA A BUSCAR
        
    
    If Range("FACTURAS!L" & i) = "AÑADIR" Then
    
            Range("USUARIO!a" & j) = Range("FACTURAS!a" & i)
            Range("USUARIO!b" & j) = Range("FACTURAS!B" & i)
            Range("USUARIO!c" & j) = Range("FACTURAS!C" & i)
            Range("USUARIO!d" & j) = Range("FACTURAS!D" & i)
            Range("USUARIO!e" & j) = Range("FACTURAS!E" & i)
            Range("USUARIO!f" & j) = Range("FACTURAS!F" & i)
            Range("USUARIO!g" & j) = Range("FACTURAS!G" & i)
            Range("USUARIO!h" & j) = Range("FACTURAS!H" & i)
            Range("USUARIO!i" & j) = Range("FACTURAS!I" & i)
            Range("USUARIO!j" & j) = Range("FACTURAS!J" & i)
            
            
        j = j + 1
        
    End If
    
    Next
     
    
       
    While Range("USUARIO!a" & j) <> ""
    
            Range("USUARIO!a" & j) = ""
            Range("USUARIO!b" & j) = ""
            Range("USUARIO!c" & j) = ""
            Range("USUARIO!d" & j) = ""
            Range("USUARIO!e" & j) = ""
            Range("USUARIO!f" & j) = ""
            Range("USUARIO!g" & j) = ""
            Range("USUARIO!h" & j) = ""
            Range("USUARIO!i" & j) = ""
            Range("USUARIO!j" & j) = ""
            Range("USUARIO!k" & j) = ""
            Range("USUARIO!l" & j) = ""
            
        j = j + 1
        
        Wend
        
Application.Calculation = xlAutomatic
        
    End Sub
 

publicado (editado)

Hola,

Sin el libro de ejemplo solo puedo participar en su consulta con un  código como el siguiente, este debería poder encontrar la última fila utilizada en la hoja “USUARIO” y comenzar a escribir a partir de esa fila. Así, no necesita especificar manualmente la fila de inicio cada vez.

Sub AÑADIRNUEVAS()

    Application.Calculation = xlManual
    
    Dim i As Integer
    Dim j As Integer
    
    ' Encuentra la última fila 
    j = Sheets("USUARIO").Cells(Sheets("USUARIO").Rows.Count, "A").End(xlUp).Row + 1
    
    For i = 2 To 8000 
        If Range("FACTURAS!L" & i) = "AÑADIR" Then
            Range("USUARIO!A" & j) = Range("FACTURAS!A" & i)
            Range("USUARIO!B" & j) = Range("FACTURAS!B" & i)
            Range("USUARIO!C" & j) = Range("FACTURAS!C" & i)
            Range("USUARIO!D" & j) = Range("FACTURAS!D" & i)
            Range("USUARIO!E" & j) = Range("FACTURAS!E" & i)
            Range("USUARIO!F" & j) = Range("FACTURAS!F" & i)
            Range("USUARIO!G" & j) = Range("FACTURAS!G" & i)
            Range("USUARIO!H" & j) = Range("FACTURAS!H" & i)
            Range("USUARIO!I" & j) = Range("FACTURAS!I" & i)
            Range("USUARIO!J" & j) = Range("FACTURAS!J" & i)
            j = j + 1
        End If
    Next i
    
    ' Limpia las celdas restantes por si hace falta
    While Range("USUARIO!A" & j) <> ""
        Range("USUARIO!A" & j) = ""
        Range("USUARIO!B" & j) = ""
        Range("USUARIO!C" & j) = ""
        Range("USUARIO!D" & j) = ""
        Range("USUARIO!E" & j) = ""
        Range("USUARIO!F" & j) = ""
        Range("USUARIO!G" & j) = ""
        Range("USUARIO!H" & j) = ""
        Range("USUARIO!I" & j) = ""
        Range("USUARIO!J" & j) = ""
        Range("USUARIO!K" & j) = ""
        Range("USUARIO!L" & j) = ""
        j = j + 1
    Wend
    
    Application.Calculation = xlAutomatic

End Sub

 

Editado el por Israel Cassales
publicado

Pues me da gusto de verdad, ahora por favor cierra el tema para dejarlo como solucionado y sirva de referencia para futuros lectores.

Concluyo mi participación.

Saludines

Conéctate para comentar

Podrás dejar un comentario después de conectarte



Conéctate ahora
×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.