Almacenar contenido de Formato de impresion (Facturas en Excel) ?

12/07/2007 - 06:52 por ManuelV | Informe spam
Tengo una archivo de excel, en el que tengo en 1 hoja los datos del cliente,
en otra los productos y finalmente una hoja de impresion, mi pregunta es, si
es posible ir haciendo un historico de las facturas que voy imprimiendo, ya
que hasta ahora solo puedo guardar la ultima, cada vez que hago otra se
reemplaza, y quiero ver si es posible ir guardandolas, ya que a veces si
quiero guardar alguna lo que hacia era guardar la hoja,copiandola con otro
nombre, pero me va haciendo el archivo mucho mas grande cada vez.

De antemano gracias.

ManuelV

Preguntas similare

Leer las respuestas

#6 ManuelV
13/07/2007 - 17:02 | Informe spam
Gracias Héctor, creo que la opcion 2 me parece mas adecuada para lo que deseo.

Las celdas serian para la parte de cantidad, concepto, p.unitario, importe, :

E20 .. G20 .. P20 .. R20
. . . .
. . . . Este es el rango de los conceptos, etc.
E34 .. G34 .. P34 .. R34

La captura de esta parte se anexa a la anterior que me habias proporcionado
o seria una independiente ? Ya que todo lo demas funciona a la perfeccion
hasta el momento.
Para la parte de reimpresion, se haria una hoja aparte y de ahi "jalar" los
datos de la parte de *historico* o como seria ?

Saludos

Manuel Valdenegro


op1: *apartar* +/- 60 columnas [15 filas x 4 conceptos] y llenar una sola fila/registro/... por venta facturada
[solo necesitaras aumentar cada celda de fila-por-articulo en el *array* que se respalda]

op2: encontrar la forma de que por macros se *cuente* la cantidad de articulos y vaciarlos en mismo numero de filas
[obviamente] los registros quedaran con filas *saltadas* [cuando exista mas de un articulo]
y la macro que *recupere* [para alguna re-impresion] debera tambien *contar* el numero de filas/articulos...
para poder (a) localizar cada *inicio de registro* y (b) *rescatar* el numero de articulos facturados

comentas cual alternativa resulta de tu preferencia ?
saludos,
hector.

p.d. no te olvides de comentar cuales son las celdas *exactas* [y el orden] que necesitas *respaldar* :))



Respuesta Responder a este mensaje
#7 Héctor Miguel
13/07/2007 - 20:18 | Informe spam
hola, Manuel !

... creo que la opcion 2 me parece mas adecuada para lo que deseo.
Las celdas serian para la parte de cantidad, concepto, p.unitario, importe, :
E20 .. G20 .. P20 .. R20
. . . .
. . . . Este es el rango de los conceptos, etc.
E34 .. G34 .. P34 .. R34
La captura de esta parte se anexa a la anterior que me habias proporcionado o seria una independiente ?
Ya que todo lo demas funciona a la perfeccion hasta el momento.
Para la parte de reimpresion, se haria una hoja aparte y de ahi "jalar" los datos de la parte de *historico* o como seria ?



para este tipo de *arreglo* de datos historicos, necesito saber como identificar cada *inicio de registro*
de preferencia, algun valor cuya referencia pueda considerarse como *unica* [p.e. el numero de la factura]
y... el orden *preciso* en que quieres respaldar cada columna/concepto/celda/... de tu formato de factura
para lo cual [obviamente] necesitas exponer los rangos [y su concepto] que seran respaldados en el historico.

el *como* rescatar del historico para re-impresion de facturas anteriores, dependera de la forma en que se haga el respaldo -?-

saludos,
hector.
Respuesta Responder a este mensaje
#8 ManuelV
13/07/2007 - 20:42 | Informe spam
Ok, mira la referencia unica podria ser el numero, como lo aconsejas, de la
factura este se encuentra en la Calda "E9" de la hoja "Facturas", el orden
seria por celda en este caso que empieza en "E20" que corresponde a Cantidad,
"G20" a descripcion, "P20" a P.Unitario y "R20" importe .. y "e21", "g21"
,"p21" y "r21" para mi segundo renglon y asi hasta "e34" ,"g34, "p34" y "r34".

Esto es lo que tenia capturado para la informacion previa que tengo, no se
si te sirva de referencia, en vase alo que me habias acosneejado antes:

Sub Historico()
With Worksheets("facturas")
Worksheets("historico").Range("a" &
Rows.Count).End(xlUp).Offset(1).Resize(, 12) = _
Array(.Range("e9"), .Range("c9"), .Range("f10"), .Range("g12"),
.Range("f14"), .Range("e16"), .Range("i16"), .Range("m16"), .Range("q16"),
.Range("r36"), .Range("r37"), .Range("r38"))
End With
End Sub

Saludos

ManuelV

"Héctor Miguel" escribió:

hola, Manuel !

> ... creo que la opcion 2 me parece mas adecuada para lo que deseo.
> Las celdas serian para la parte de cantidad, concepto, p.unitario, importe, :
> E20 .. G20 .. P20 .. R20
> . . . .
> . . . . Este es el rango de los conceptos, etc.
> E34 .. G34 .. P34 .. R34
> La captura de esta parte se anexa a la anterior que me habias proporcionado o seria una independiente ?
> Ya que todo lo demas funciona a la perfeccion hasta el momento.
> Para la parte de reimpresion, se haria una hoja aparte y de ahi "jalar" los datos de la parte de *historico* o como seria ?

para este tipo de *arreglo* de datos historicos, necesito saber como identificar cada *inicio de registro*
de preferencia, algun valor cuya referencia pueda considerarse como *unica* [p.e. el numero de la factura]
y... el orden *preciso* en que quieres respaldar cada columna/concepto/celda/... de tu formato de factura
para lo cual [obviamente] necesitas exponer los rangos [y su concepto] que seran respaldados en el historico.

el *como* rescatar del historico para re-impresion de facturas anteriores, dependera de la forma en que se haga el respaldo -?-

saludos,
hector.



Respuesta Responder a este mensaje
#9 Héctor Miguel
14/07/2007 - 05:43 | Informe spam
hola, Manuel !

... la referencia unica podria ser el numero... de la factura este se encuentra en la Calda "E9" de la hoja "Facturas" ...
Esto es lo que tenia capturado para la informacion previa que tengo, no se si te sirva de referencia [...]



1) te cambie el estilo de referencia de [p.e.] .Range("e9") a: -> .[e9] [solo por recortar las lineas de codigo]

2) con los siguientes cambios, registras los datos de tu hoja factura segun los n_articulos vendidos
OJO: la estructuracion del copiado es diferente y he puesto en la ultima columna el numero de articulos facturados

3) esto para futura referencia -p.e.- cuando necesites *rescatar* los datos completos de cada factura historica a re-impresiones
ya que el codigo de rescate tendria que trabajar *a la inversa* [localizar la factura y conocer cuantos articulos se enlistaron]

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

Sub Historico()
Dim Generales, Articulos, n As Byte, Col As Byte
With Worksheets("facturas")
Generales = Array(.[e9], .[c9], .[f10], .[g12], .[f14], .[e16], .[i16], .[m16], .[q16], .[r36], .[r37], .[r38])
n = Application.Count(.[e20:e34])
Articulos = Array(.[e20].Resize(n).Value, .[g20].Resize(n).Value, .[p20].Resize(n).Value, .[r20].Resize(n).Value)
End With
With Worksheets("historico")
With .Range("a" & .Range("m" & Rows.Count).End(xlUp).Row)
.Offset(1).Resize(, 12) = Generales
.Offset(1, 16) = n
For Col = 0 To 3
.Offset(1, 12 + Col).Resize(n) = Articulos(Col)
Next
End With
End With
End Sub
Respuesta Responder a este mensaje
#10 ManuelV
16/07/2007 - 23:02 | Informe spam
Muchisimas gracias Héctor ..

Ya revise el dia de hoy lo que me enviaste y funciono de maravilla, solo la
parte de la "reimpresion" no entendi muy bien, pero bueno, puedo hacerlo a
mano en caso de que lo requiera ya con el Historico, al fin que no es muy
frecuente.

Te agradezco tu tiempo, la paciencia y sobre todo tu esfuerzo ..

Manuel Valdenegro


"Héctor Miguel" escribió:

hola, Manuel !

> ... la referencia unica podria ser el numero... de la factura este se encuentra en la Calda "E9" de la hoja "Facturas" ...
> Esto es lo que tenia capturado para la informacion previa que tengo, no se si te sirva de referencia [...]

1) te cambie el estilo de referencia de [p.e.] .Range("e9") a: -> .[e9] [solo por recortar las lineas de codigo]

2) con los siguientes cambios, registras los datos de tu hoja factura segun los n_articulos vendidos
OJO: la estructuracion del copiado es diferente y he puesto en la ultima columna el numero de articulos facturados

3) esto para futura referencia -p.e.- cuando necesites *rescatar* los datos completos de cada factura historica a re-impresiones
ya que el codigo de rescate tendria que trabajar *a la inversa* [localizar la factura y conocer cuantos articulos se enlistaron]

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

Sub Historico()
Dim Generales, Articulos, n As Byte, Col As Byte
With Worksheets("facturas")
Generales = Array(.[e9], .[c9], .[f10], .[g12], .[f14], .[e16], .[i16], .[m16], .[q16], .[r36], .[r37], .[r38])
n = Application.Count(.[e20:e34])
Articulos = Array(.[e20].Resize(n).Value, .[g20].Resize(n).Value, .[p20].Resize(n).Value, .[r20].Resize(n).Value)
End With
With Worksheets("historico")
With .Range("a" & .Range("m" & Rows.Count).End(xlUp).Row)
.Offset(1).Resize(, 12) = Generales
.Offset(1, 16) = n
For Col = 0 To 3
.Offset(1, 12 + Col).Resize(n) = Articulos(Col)
Next
End With
End With
End Sub



Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida