historico - Offset

12/08/2008 - 15:33 por gongi | Informe spam
Hola Grupo !,

Sigo empeñado en conseguir un histórico de mis *facturas*. Lo necesito
como resumen para contabilidad y comprobación de cobros por factura.
Gracias por vuestro código. No obstante, como puedo desglosar los
cobros hacia la izquierda de la tabla (no hacia abajo) , de manera que
tenga un registo *fila* único por factura. ? . Si desgloso hacia abajo
quedan huecos y la hoja pierde operatividad después tratarla (ordenar
por fechas, por nº de factura, etc ).


Sub Historico()
Dim Generales, Cobros, n As Byte, Col As Byte
'Cuando el libro no esta abierto:'
'Dim mlh As Workbook
'Set mlh = Workbooks.Open("historico", ReadOnly:=True)'

'capturar los datos de la plantilla de liquidacion'

With Worksheets("liquidacion")
Generales = Array(.[b2], .[d53], .[d54], .[b7], .[b3], .[b4], .
[b5], .[b56], .[c56], .[d56])
n = Application.Count(.[f54:f62]) 'cuenta el nº de cobros'
Cobros = Array(.[f54].Resize(n).Value, .[g54].Resize(n).Value, .
[h54].Resize(n).Value) 'Array dinamico cambia de tamaño segun n'
End With

'volcar los datos en el historico con el libro ya abierto '

With Workbooks("historico").Worksheets("historico")
With .Range("a" & .Range("p" & Rows.Count).End(xlUp).Row) 'halla
el final del rango'
.Offset(1).Resize(, 10) = Generales 'llena la primera fila
hasta la columan 10'
'.Offset(1, 8) = n coloca en contador en la ultima columa '
For Col = 0 To 2 'segun el n de columnas a llenar detalle
de cobros 3 0-1-2'
.Offset(1, 10 + Col).Resize(n) = Cobros(Col)
Next
End With
End With
'mlh.Close
'Set mlh = Nothing '
End Sub
 

Leer las respuestas

#1 gongi
12/08/2008 - 20:59 | Informe spam
On 12 ago, 15:33, gongi wrote:
Hola Grupo !,

Sigo empeñado en conseguir un histórico de mis *facturas*. Lo necesito
como resumen para contabilidad y comprobación de cobros por factura.
Gracias por vuestro código. No obstante, como puedo desglosar los
cobros hacia la izquierda de la tabla (no hacia abajo) , de manera que
tenga un registo *fila* único por factura. ? . Si desgloso hacia abajo
quedan huecos y la hoja pierde operatividad después tratarla (ordenar
por fechas, por nº de factura, etc ).

Sub Historico()
Dim Generales, Cobros, n As Byte, Col As Byte
'Cuando el libro no esta abierto:'
'Dim mlh As Workbook
'Set mlh = Workbooks.Open("historico", ReadOnly:=True)'

'capturar los datos de la plantilla de liquidacion'

With Worksheets("liquidacion")
Generales = Array(.[b2], .[d53], .[d54], .[b7], .[b3], .[b4], .
[b5], .[b56], .[c56], .[d56])
n = Application.Count(.[f54:f62]) 'cuenta el nº de cobros'
Cobros = Array(.[f54].Resize(n).Value, .[g54].Resize(n).Value, .
[h54].Resize(n).Value) 'Array dinamico cambia de tamaño segun n'
End With

'volcar los datos en el historico con el libro ya abierto '

With Workbooks("historico").Worksheets("historico")
With .Range("a" & .Range("p" & Rows.Count).End(xlUp).Row) 'halla
el final del rango'
.Offset(1).Resize(, 10) = Generales 'llena la primera fila
hasta la columan 10'
'.Offset(1, 8) = n coloca en contador en la ultima columa '
For Col = 0 To 2 'segun el n de columnas a llenar detalle
de cobros 3 0-1-2'
.Offset(1, 10 + Col).Resize(n) = Cobros(Col)
Next
End With
End With
'mlh.Close
'Set mlh = Nothing '
End Sub



Perdon, claro quiero decir que todos los datos de una misma factura y
los cobros se vuelquen hacia la derecha, llenando columnas sucesivas.
Saludos !

Preguntas similares