Orale que bueno, yo estoy tratando de hacer lo mismo pero para la lista de productos, es decir que cada imagen quede en la misma fila columna del código del producto.
Voy a probar tu código y hacer pruebas y te escriob ok
JM
--
--
Buenas tardes
Estoy publicando el programa que hice para automatización Excel , si alguien lo puede mejorar, espero sirva ..
.Creo un cursor con los datos de la facturación , incluyendo un campo fotos donde llevo la trayectoria de la fotografía del producto . si no existe muevo la trayectoria de una imagen ya creada llamada nofoto.jpg
SELECT Ventas.cliente, Ventas.num_ped, Ventas.fecha, Ventas.num_fact,Ventas.pkgs, Ventas.Bultos as bultos1, Ventas.pieza as pesoneto,;
Ventas.terminos, Ventas.termin, Ventas.manejo, Ventas.seguros, Ventas.ciudad, Ventas.Usu88 as telefono,;
Ventas.flete, Ventas.direccion, Ventas.vendedor, nomvend AS Nvendedor ,Ventas.pais_dest,Ventas.gasto1,;
Ventas.nomb_dest2, Ventas.marcas, " " as lugar,Ventas.pais,detallev.detalle2, detallev.cod_prod, detallev.detalle as detalle, detallev.unidad,Ventas.cubicaje,;
SUM(detallev.cantidad) AS CANTIDAD, detallev.bultos,detallev.peso_b, detallev.precio,SUM( detallev.monto) as monto,;
Ventas.b4 as Gasto2, Ventas.b4 AS Gastos2, Ventas.Gasto3, Ventas.Valor_p,Ventas.Composicio,;
SPACE(80) as fotos;
FROM ;
miranda!Ventas ;
INNER JOIN miranda!detallev ;
ON Ventas.id = detallev.id ;
WHERE Ventas.id = Thisform.Gframes1.Page1.ID1.Value AND Detallev.Cod_prod # " ";
GROUP BY detallev.cod_prod;
INTO CURSOR Query2 READWRITE
IF RECCOUNT()>0
SELECT Query2
GO top
DO WHILE !EOF()
STORE cod_prod TO m.cod_prod
SELECT imagenes
SET ORDER to tag cod_prod
IF SEEK(UPPER(ALLTRIM(m.cod_prod)))
STORE fotos TO m.fotos
SELECT Query2
replace Query2.fotos WITH ALLTRIM(FULLPATH(m.fotos))
ELSE
replace Query2.fotos WITH FULLPATH("Z:\IMAGES\NOFOTO.JPG")
ENDIF
SKIP
ENDDO
SELECT Query2
GO TOP
oExcel = Createobject('Excel.Application')
With oExcel
.WorkBooks.Add
.Visible = .T.
With .ActiveWorkBook.ActiveSheet
Local loRange , WFila , WColum, WTrange, Cfila, Ccolum, Wcfila, WcColum, tfila, tColum
STORE 0 TO Wcfila, WcColum , tfila, tColum, Cfila, Ccolum
.Cells(1,1)=("Cia:") && A
***********************************
.Cells(2,1)=("Cliente:") +ALLTRIM(cliente)+" "+ALLTRIM(pais_dest)&& A
.Cells(3,1)=("Dirección:") && A
.Cells(4,1)=("Telefonos:") && A
.Cells(2,4)=("Fecha:")+DTOC(fecha) && A
.Cells(3,4)=("No Pedido:")+ALLTRIM(num_ped) && A
.Cells(4,4)=("No Factura:") +ALLTRIM(num_fact)&& A
.Cells(5,1)=("Referencia") && A
.Cells(5,2)=("Descripción") && B
.Cells(5,3)=("Cantidad") && C
.Cells(5,4)=("Precio") && D
.Cells(5,5)=("Monto") && F
STORE 8 TO Cfila
STORE 12 TO Ccolum
fila=6
DO while !EOF()
tfila = Cfila
tColum = Ccolum
*.Rows(fila).RowHeight=100
.Cells(Cfila,1)=(TRANSFORM(Query2.Cod_prod,"####################")) && A
.Cells(Cfila,2)=(TRANSFORM(Query2.Detalle,"########################################")) && B
.Cells(Cfila,3)=(Query2.cantidad) && C
.Cells(Cfila,4)=(Query2.precio) && D
.Cells(Cfila,5)=(Query2.monto) && E
fila = fila + 6
WFila='F'+ALLTRIM(STR(Cfila))
WColum='F'+ALLTRIM(STR(Ccolum))
WTrange=WFila+":"+WColum
loRange = .Range(WTrange)
.Shapes.AddPicture(FULLPATH(Query2.fotos), .T., .T., loRange.Left, loRange.Top, loRange.Width, loRange.Height) && F
SKIP
wCfila = tfila+ 6
wCcolum = tcolum + 6
cfila = wCfila
cColum = wCcolum
ENDDO
Endwith
Endwith
ELSE
WAIT WINDOW NOWAIT "No existen registros, por favor verifique....."
ENDIF
SELECT Ventas
thisform.Refresh
IF RECCOUNT()>0
ELSE
=messagebox("Parece ser que alguno de los documentos seleccionados no tiene información en el detalle o no existe el mismo.....por favor verifique y vuelva a intentarlo",16,"!! Atención....")
ENDIF
Thisform.refresh
RELEASE Cursor_a
JM
De: publice...@googlegroups.com [mailto:publice...@googlegroups.com] En nombre de Hernandez Gabriel
Enviado el: lunes, 8 de octubre de 2012 15:58
Para: publice...@googlegroups.com
Asunto: [vfp] [VFP] Automatización Excel
Hola, buenas tardes a todos.
--
Buenos días foro.. encontre este hilo sobre automatización y se me ha pedido haga lo mismo, de la siguiente forma.
En la celda A1 tengo la referencia o código del producto y en un una carpeta tengo las imágenes de cada producto, se me pide entonces insertar la foto o imagen de cada producto en la celda B1, y asi sucesivamente. lo hice al desde un archivo de texto a Excel , el problema es hacerlo directamente en la hoja o sea importo la hoja de Excel a texto, de texto a DBF, y de Dbf a Excel insertando la imagen , pero ese proceso es muy largo , si alguien tiene una idea o un ejemplo podría ´por favor ayudarme?
Gracias
JM
De: publice...@googlegroups.com [mailto:publice...@googlegroups.com] En nombre de Hernandez Gabriel
Enviado el: lunes, 8 de octubre de 2012 3:58
Para: publice...@googlegroups.com
Asunto: [vfp] [VFP] Automatización Excel
Hola, buenas tardes a todos.
--
--