Tengo este codigo que es copiado y adaptado (no llego a tanto y puede no estar bien) para guardar la factura, y funciona "casi" bien.
El problema que me da es que a veces borra una factura anterior, he probado cambiando varias cosas pero siempre en algun momento pasa lo mismo. No se donde esta el problema.
- Código: Seleccionar todo
Sheets("BDFacturas").Select
ActiveSheet.Unprotect
With Worksheets("BDFacturas")
fila = 3
Do While True
If IsEmpty(.Cells(fila, 3)) Then Exit Do
fila = fila + 1 '
Loop
.Cells(fila, 2) = Worksheets("Factura").Range("N29").Value
.Cells(fila, 3) = Worksheets("Factura").Range("J29").Value
.Cells(fila, 4) = Worksheets("Factura").Range("Q24").Value
.Cells(fila, 5) = Worksheets("Factura").Range("E7").Value
.Cells(fila, 6) = Worksheets("Factura").Range("E9").Value
.Cells(fila, 7) = Worksheets("Factura").Range("P9").Value
.Cells(fila, 8) = Worksheets("Factura").Range("C28").Value
.Cells(fila, 9) = Worksheets("Factura").Range("D28").Value
.Cells(fila, 10) = Worksheets("Factura").Range("E28").Value
.Cells(fila, 11) = Worksheets("Factura").Range("F28").Value
.Cells(fila, 12) = Worksheets("Factura").Range("G28").Value
.Cells(fila, 13) = Worksheets("Factura").Range("H28").Value
.Cells(fila, 14) = Worksheets("Factura").Range("I28").Value
.Cells(fila, 15) = Worksheets("Factura").Range("J28").Value
.Cells(fila, 16) = Worksheets("Factura").Range("K28").Value
.Cells(fila, 17) = Worksheets("Factura").Range("L28").Value
.Cells(fila, 18) = Worksheets("Factura").Range("M28").Value
.Cells(fila, 19) = Worksheets("Factura").Range("Q28").Value
.Cells(fila, 20) = Worksheets("Factura").Range("Q26").Value
.Cells(fila, 21) = Worksheets("Factura").Range("Q40").Value
.Cells(fila, 22) = Worksheets("Factura").Range("H25").Value
.Cells(fila, 23) = Worksheets("Factura").Range("L26").Value
.Cells(fila, 24) = Worksheets("Factura").Range("C32").Value
.Cells(fila, 25) = Worksheets("Factura").Range("L32").Value
.Cells(fila, 26) = Worksheets("Factura").Range("Q32").Value
.Cells(fila, 27) = Worksheets("Factura").Range("C33").Value
.Cells(fila, 28) = Worksheets("Factura").Range("L33").Value
.Cells(fila, 29) = Worksheets("Factura").Range("Q33").Value
.Cells(fila, 30) = Worksheets("Factura").Range("C34").Value
.Cells(fila, 31) = Worksheets("Factura").Range("L34").Value
.Cells(fila, 32) = Worksheets("Factura").Range("Q34").Value
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End With
Sheets("Factura").Select
ActiveSheet.Unprotect
Worksheets("Factura").Range("Q24").Value = Worksheets("Factura").Range("Q24") + 1
Range("E7,C28,D28,E28,F28,G28,H28,I28,J28,K28,L28,M28,L26,C32,L32,J29,N29,O32,C33,L33,O33,C34,L34,O34").Select
Selection.ClearContents
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Saludos!!





