Página 1 de 1
XLS para PDF
Enviado: 27 Out 2023 17:13
por Alexandre Silva
Tem uma maneira de converter uma planilha excell para pdf ?
No exemplo abaixo, abro um arquivio excell, mudo um conteudo de uma celula, e salvo o arquivo com outro nome. isso ok
Mas gostaria de salvar em PDF. Mudar para c:\teste2.pdf nao funcionou
Código: Selecionar todos
FUNCTION testex()
LOCAL oExcel := CREATEOBJECT( "Excel.Application" )
LOCAL oSheet
oExcel:WorkBooks:Open( "c:\teste.xls" )
oExcel:Visible := .f.
oSheet = oExcel:ActiveSheet
? oSheet:Cells(1,1):Value := 'Conteudo'
OExcel:WorkBooks(1):SaveAs('C:\teste2.xls')
oExcel:Quit()
RETURN
XLS para PDF
Enviado: 27 Out 2023 17:56
por Mario Mesquita
Olá.
Tem que ser via programa? Creio que terá que gerar uma impressão e fazer uma saída em PDF. Dependendo do uso, o Win 10 já tem uma saída para PDF nativa. Ou algo via programa também...
Saudações,
Mario.
XLS para PDF
Enviado: 28 Out 2023 09:02
por Alexandre Silva
Consegui...
OExcel:WorkBooks(1):ExportAsFixedFormat(Type:=0,FileName:="d:\teste.pdf",Quality:=0)
https://learn.microsoft.com/pt-br/offic ... ixedformat
***
Outra opcao, é pelo SaveAs, exemplo: OExcel:WorkBooks(1):SaveAs('C:\teste2.html',44)
44 é Html, nao achei o codigo para pdf, seria o ideal
https://learn.microsoft.com/pt-br/offic ... ook.saveas
https://learn.microsoft.com/pt-br/offic ... fileformat
XLS para PDF
Enviado: 30 Out 2023 12:16
por Kapiaba
tente algo assim:
Código: Selecionar todos
METHOD SaveToPdf() CLASS Resumen_Movtos
LOCAL cFilePdf := cTempFile( "\"+CurDir()+'\tmp' , ".PDF" )
::oExcel := CREATEOBJECT( "Excel.Application" )
::oExcel:WorkBooks:Open( cFileXls )
::oExcel:Sheets( cHoja1 ):Select()
::oSheet := ::oExcel:Get( "ActiveSheet" )
::oSheet:PageSetup:PaperSize := 1
::oSheet:PageSetup:Orientation := 2
::oSheet:ExportAsFixedFormat(0, cFilePdf, 0, .t., .f. )
::oExcel:Quit()
MSGRUN( "Abriendo PDF FILE, por favor espere un momento: ", "Usuario", {|| Shellexecute( 0,"open", cFilePDF ) } )
RETURN (NIL)
Regards, saludos.
XLS para PDF
Enviado: 30 Out 2023 17:37
por carlos_dornelas
Alexandre,
Outra opcao, é pelo SaveAs, exemplo: OExcel:WorkBooks(1):SaveAs('C:\teste2.html',44)
44 é Html, nao achei o codigo para pdf, seria o ideal
Vendo o link que você postou, acho que para salvar como DBF, seria "OExcel:WorkBooks(1):SaveAs('C:\teste2.dbf',7)", que uma necessidade minha neste momento, ou seja, preciso converter um XLS em DBF...
Você poderia passar o restante da rotina que me permita abrir o arquivo xls e executar esse comando para salvar como DbAse?
Grato
Antonio Carlos
XLS para PDF
Enviado: 30 Out 2023 18:36
por Alexandre Silva
Os formatos disponiveis sao esses
https://learn.microsoft.com/pt-br/offic ... fileformat
como nao achei PDF, entao usei o comando que ja mencionei.
OExcel:WorkBooks(1):ExportAsFixedFormat(Type:=0,FileName:="d:\teste.pdf",Quality:=0)
Esse Type=0 é PDF
XLS para PDF
Enviado: 30 Out 2023 22:14
por carlos_dornelas
Alexandre, talvez eu não tenha me expressado bem...
Sim, já acessei esse link e vi que o formato para se salvar como DBF é 7.
Você poderia passar o restante da rotina que me permita abrir o arquivo xls...
O que te pedi foi isso...se você puder compartilhar, fico muito grato
[]s
Antonio Carlos
XLS para PDF
Enviado: 31 Out 2023 09:44
por Alexandre Silva
Oi
Nesse exemplo,eu abro edito, salvo e exporto em pdf
Código: Selecionar todos
function main()
local varqx,cfilpdf,oExcel,oSheet
varqx:='C:\arquivo.xls' // nome completo do arquivo com caminho e a unidade
cfilepdf:='C:\arquivo.pdf' // nome completo do arquivo com caminho e a unidade
oExcel:= CREATEOBJECT( "Excel.Application" )
oExcel:WorkBooks:Open(varqx) //
oExcel:Visible := .f. // se .t. vai abrir o arquivo na tela
oSheet = oExcel:ActiveSheet
? oSheet:Cells(1,1):Value :='Mudo o conteudo desssa celula' // todas as propriedades ficam valendo o que esta no arquivo, fonte, tamanho, etc
? oSheet:Cells(2,1):Value :='Mudo o conteudo desssa celula'
OExcel:WorkBooks(1):save() // salva no excell
OExcel:WorkBooks(1):ExportAsFixedFormat(Type:=0,FileName:=cfilepdf,Quality:=1,IncludeDocProperties:=.t.,IgnorePrintAreas:=.t.,1,1) // type:=0 exporta em pdf
OExcel:quit()
retu