Programaticamente converter Excel para XPS

votos
-1

Eu estou procurando uma maneira de converter programaticamente Excel relatórios para o formato XPS. É este suportado em qualquer lugar do quadro Microsoft, ou devemos procurar por uma ferramenta de terceiros?

Sim atualmente estamos programaticamente a criação de relatórios do Excel usando ExcelWriter e precisa para produzir XPS relatórios para um cliente. Por isso, quer ir direto para XPS que parece ser uma curva de aprendizado maior, ou converter o relatório Excel para XPS.

Publicado 19/05/2009 em 19:32
fonte usuário
Em outras línguas...                            


3 respostas

votos
3

Há um add on para o Office 2007 que lhe dá a capacidade de exportar para XPS ou PDF. Invocar Excel via Microsoft.Office.Interop.Excel e exportar para XPS.

Do meu próprio código (livro é uma instância mas fornecendo namespace completo em vez):

Microsoft.Office.Interop.Excel.Workbook.ExportAsFixedFormat(
    Excel.XlFixedFormatType.xlTypeXPS,
    pdfpath, Excel.XlFixedFormatQuality.xlQualityStandard,
    true, true,
    fpage, tpage,
    false,
    oMissing
);

Há um artigo MSDN sobre como fazer isso.

Respondeu 19/05/2009 em 19:42
fonte usuário

votos
0

Você também pode imprimir a partir do Excel para XPS. Não tecnicamente converter, mas pode ser apenas o que você precisa.

Dim ws As Worksheet
Set ws = ActiveSheet
Call ws.PrintOut(ActivePrinter:="Microsoft XPS Document Writer", _
                PrintToFile:=True, PrToFileName:="S:\Temp\Test3.xps")
Respondeu 20/10/2015 em 10:24
fonte usuário

votos
0

I preferem o método sugerido por Colin, mas você também pode usar SaveAsa pasta de trabalho com a FileFormatconstante de 18para XPS como descritas nesta questão relacionada:

Qual é o número FileType para PDF no Excel 2007 que é necessário para salvar um arquivo como PDF através da API?

Respondeu 19/05/2009 em 20:31
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more