Seleccionar y Imprimir archivos de excel

200 views
Skip to first unread message

sscom

unread,
Aug 11, 2014, 8:08:07 PM8/11/14
to publice...@googlegroups.com
Hola amigos, ojala me puedan ayudar, estoy realizando un sistema y se necesita que en una opcion se abra una ventana para mostrar y seleccionar solo archivos de excel y una vez especificado el archivo mandarlo a imprimir, creo que esto se hace con API de windows pero no se como, ojala me puedan ayudar, Gracias por su tiempo

Fidel Charny

unread,
Aug 11, 2014, 8:31:21 PM8/11/14
to publice...@googlegroups.com
Tal vez te sirva algo así:
LOCAL lcFile,oExcel,oLibro,nNumHoja,xlSheet
local cMiDoc,oWsh,lcPath
lcpath
=FULLPATH("")
oWsh
= CREATEOBJECT("WScript.Shell")
cmidoc
=oWsh.SpecialFolders("MyDocuments")
cMiDoc
=["]+cmidoc+["]
CD
&cmidoc
lcFile
=GetFile("xls")
CD
&lcpath
if empty(lcFile)
   
return
endif
TRY
    LOCAL loex
As Exception
    oExcel
= CREATEOBJECT("Excel.Application")
    oLibro
=oExcel.Workbooks.Open(lcFile)
    qHOjas
=oExcel.Sheets.Count

    nNumHoja
=1
    oExcel
.Sheets(nNumHoja).Activate
   
XLSheet = oExcel.ActiveSheet

    xlSheet
.PrintOut(,,,.f.,"" )

    oExcel
.visible=.f.
    olibro
.Close()
    oExcel
.Quit
CATCH TO loex
    loex
.UserValue=PROGRAM()
   
* Lectura del error

FINALLY
    xlSheet
=null
    olibro
=null
    oExcel
=null
ENDTRY

   

Allan Raúl Acuña

unread,
Aug 11, 2014, 8:34:30 PM8/11/14
to publice...@googlegroups.com
Estimado

Mis saludos antes que nada.

Con las siguientes lineas puedes levantar en un Cursor todos los archicos con extension XLS:
----------------------------
SET DEFAULT TO ?

IF !USED("ListXLS")
    CREATE CURSOR ListXLS ( A N(1), B C (254) )
ENDIF
SELECT ListSCX
ZAP

lcForm = SYS(2000, "*.*")

DO WHILE !EMPTY(lcForm)
    IF INLIST(JUSTEXT(lcForm), "XLS")
        INSERT INTO ListXLS ( A, B ) VALUES ( 1, lcForm )
    ENDIF
    lcForm = SYS(2000, "*.*", 1)
ENDDO

SELECT ListSCX
BROWSE
------------------------------------
Luego para mandarlos a imprimir usa el comando API= ShellExecute:

http://www.ml-consult.co.uk/foxst-26.htm

El action en tu caso es:  print
---------------------------------------------------

Publica lo que logres.

Saludos cordiales.

Lic. Allan Raúl Acuña
Analista Programador
msn= allan...@hotmail.com
skype= NicEasySoft
            +(505) 8 999 8950
Managua, Nicaragua
Centroamérica



Date: Mon, 11 Aug 2014 17:08:07 -0700
From: sscom...@gmail.com
To: publice...@googlegroups.com
Subject: [vfp] Seleccionar y Imprimir archivos de excel

sscom

unread,
Aug 11, 2014, 8:41:02 PM8/11/14
to publice...@googlegroups.com
Gracias amigos voy a intentarlo, Fidel y Allan, gracias por su tiempo, si tengo dudas o no me sale los molesto nuevamente, gracias.

Allan Raúl Acuña

unread,
Aug 11, 2014, 8:44:42 PM8/11/14
to publice...@googlegroups.com
Solo para saber, si solo es seleccionar un archivo con

 lcFile = GETFILE("xls") y luego usas el ShellExecute para  mandarlo a imprimir.


Saludos cordiales.

Lic. Allan Raúl Acuña
Analista Programador
msn= allan...@hotmail.com
skype= NicEasySoft
            +(505) 8 999 8950
Managua, Nicaragua
Centroamérica



Date: Mon, 11 Aug 2014 17:41:01 -0700
From: sscom...@gmail.com
To: publice...@googlegroups.com
Subject: [vfp] Re: Seleccionar y Imprimir archivos de excel

sscom

unread,
Aug 12, 2014, 1:31:34 PM8/12/14
to publice...@googlegroups.com
Si Allan, es asi de sencillo, seleccionar un archivo, guardarlo en alguna variable junto con su ruta o path y enviarlo a imprimir junto a un reporte que ya esta hecho

Allan Raúl Acuña

unread,
Aug 12, 2014, 3:51:08 PM8/12/14
to publice...@googlegroups.com
Excelente, ya lo tienes con lo enviado.


Saludos cordiales.

Lic. Allan Raúl Acuña
Analista Programador
msn= allan...@hotmail.com
skype= NicEasySoft
            +(505) 8 999 8950
Managua, Nicaragua
Centroamérica



Date: Tue, 12 Aug 2014 10:31:34 -0700
From: sscom...@gmail.com
To: publice...@googlegroups.com
Subject: Re: [vfp] Re: Seleccionar y Imprimir archivos de excel
Reply all
Reply to author
Forward
0 new messages