Error con el método autofill

Acudo a ustedes, porque tengo un excel con un código vba que copia los datos de una hoja a otra, y una columna en especifico debe convertir el valor de positivo a negativo.

El código es este

Sub gastoterreno()
Dim ws1 As Worksheet, ws2 As Worksheet
Dim uFila1 As Long
Dim uFila2 As Long
Dim Col As Long
Dim wbLibroActual1 As Workbook
Dim wsHojaActual1 As Worksheet
Dim wsHojaActual2 As Worksheet
Set wbLibroActual1 = Workbooks(ThisWorkbook.Name) 'nombre del libro
Set wsHojaActual1 = wbLibroActual1.ActiveSheet 'hoja actual activa desde la que se copiaran los datos
Sheets("Gter").Activate  'hoja destino de los datos copiados
Set wsHojaActual2 = wbLibroActual1.ActiveSheet
uFila1 = wsHojaActual1.Range("A" & Rows.Count).End(xlUp).Row
uFila2 = wsHojaActual2.Range("G" & Rows.Count).End(xlUp).Row
 y = uFila2 + 1
wsHojaActual1.Range("A2:A" & uFila1).Copy Destination:=wsHojaActual2.Cells(y, 6) 'copia el nombre
wsHojaActual1.Range("B2:B" & uFila1).Copy 'copia culmna de UN
wsHojaActual2.Cells(y, 5).PasteSpecial xlPasteValues 'pega valores de columna UN no la formula
wsHojaActual1.Range("C2:C" & uFila1).Copy Destination:=wsHojaActual2.Cells(y, 4) 'copia la cuenta
wsHojaActual1.Range("D2:D" & uFila1).Copy Destination:=wsHojaActual2.Cells(y, 7) 'COPIA LA FECHA
wsHojaActual1.Range("E2:E" & uFila1).Copy Destination:=wsHojaActual2.Cells(y, 8) 'factura
wsHojaActual1.Range("G2:G" & uFila1).Copy Destination:=wsHojaActual2.Cells(y, 11) 'GLOSA
wsHojaActual1.Range("H2:H" & uFila1).Copy Destination:=wsHojaActual2.Cells(y, 12) 'DEBE
wsHojaActual1.Range("I2:I" & uFila1).Copy Destination:=wsHojaActual2.Cells(y, 13) 'HABER
'coloca en negativo los haber en el total
wsHojaActual2.Cells(y, 14).FormulaR1C1 = "=IF(RC[-2]<>0,-RC[-2],IF(RC[-1]<>0,RC[-1],0))"
'se evalúa cuál es la última ocupada para arrastrar la fórmula
finx = wsHojaActual2.Range("K" & Rows.Count).End(xlUp).Row      ' si hay datos en col Glosa,
'sino reemplaza por otra letra que ocupe todas las filas
'se la arrastra hasta la última fila ocupada col Q de saldo
 wsHojaActual2.Cells(y, 14).AutoFill _
 Destination:=wsHojaActual2.Range("N" & y & ":N" & finx), Type:=xlFillDefault
End Sub

Este código venia haciendo su trabajo, copiaba de una hoja a la hoja destino y posteriormente la columna N colocaba el valor en negativo.

Sin embargo hoy comenzo a dar un error en la linea

wsHojaActual2.Cells(y, 14).AutoFill _
 Destination:=wsHojaActual2.Range("N" & y & ":N" & finx), Type:=xlFillDefault

No se el porque comenzó a dar este error si venia trabajando correctamente.

Si alguno puede ayudarme estaré eternamente agradecido.

1 Respuesta

Respuesta
2

Sin embargo hoy comenzo a dar un error en la linea

Con este mensaje, debes buscar el contenido de las variables o argumentos de esa instrucción.

Es posible que se encuentre con celdas protegidas, combinadas, o las variables no están tomando valores aptos para el relleno.

Cuando la macro se detiene, pasa el cursor por las variables para observar su contenido.

Si el problema no se resuelve tendrás que enviarme tu libro o dejarlo en algún sitio y pasarme el enlace.

Sdos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas