1.下载jar包:
jacob-1.7.jar,见附件
将.dll文件放到system32文件夹下
2.实现类
import java.io.*; import java.util.Calendar; import java.util.Date; import com.jacob.activeX.ActiveXComponent; import com.jacob.com.ComThread; import com.jacob.com.Dispatch; import com.jacob.com.Variant; public class ExcelToPdf { private String path; public ExcelToPdf(String path) { this.path = path; } public void saveExcelAsPdf(String filePath, String outFile) { ComThread.InitSTA(); ActiveXComponent actcom = new ActiveXComponent("Excel.Application"); try { System.out.println((new Date()).toString() + " start convert from : " + filePath + " to " + outFile); actcom.setProperty("Visible", new Variant(false)); Dispatch excels = actcom.getProperty("Workbooks").toDispatch(); Dispatch excel = Dispatch.invoke( excels, "Open", Dispatch.Method, new Object[] { filePath, new Variant(false), new Variant(false) }, new int[9]).toDispatch(); Dispatch.invoke(excel, "SaveAs", Dispatch.Method, new Object[] { outFile, new Variant(57), new Variant(false), new Variant(57), new Variant(57), new Variant(false), new Variant(true), new Variant(57), new Variant(false), new Variant(true), new Variant(false) }, new int[1]); Dispatch.call(excel, "Close", new Variant(false)); if (actcom != null) { actcom.invoke("Quit", new Variant[] {}); actcom = null; } ComThread.Release(); System.out.println((new Date()).toString() + " convert ok : " + filePath + " to " + outFile); } catch (Exception es) { es.printStackTrace(); } }
3.测试类
import java.io.File; public class Test{ public static void main(String[] args) throws Exception { String path = "C:/A.xls"; System.out.println("Convert Path : " + path); try { File file = new File(path); if (file.exists()) { ExcelToPdf et = new ExcelToPdf(path); et.saveExcelAsPdf(path, "C:/S.pdf"); } else { System.out.println("Path Not Exist,Pls Comfirm: " + path); } } catch (Exception ex) { System.out .println("Pls Check Your Format,Format Must Be: java com/olive/util/RunTask Path(Exist Path) Frequency(Run Frequency,int)"); ex.printStackTrace(); } } }
相关推荐
在提供的压缩包文件"Office2007插件-SaveAsPDF.exe"中,很可能是微软官方提供的这个功能的安装程序。用户可以通过安装这个插件来扩展Office 2007的功能,使其具备将文档保存为PDF的能力。 安装和使用步骤大致如下:...
Office 2007加载项“Save as PDF”是一个非常实用的功能,专为Microsoft Office 2007设计,使得用户可以直接在Word、Excel等应用程序中将文档保存为PDF(Portable Document Format)格式。PDF文件格式广泛应用于各种...
标题“Microsoft Save as PDF or XPS V1.0”指的是微软发布的一款插件,该插件主要用于Microsoft Office 2007和2010版本的办公软件中,特别是Word和Excel应用程序。这款插件的主要功能是允许用户将他们的文档转换成...
package.SaveAs(memoryStream); return memoryStream.ToArray(); } ``` 3. **Excel转PDF** iTextSharp库提供了将其他格式的文档转换为PDF的功能。下面是如何将Excel数据转换为PDF: ```csharp using ...
4. **Excel转PDF**:在VC++中,可以利用Excel的SaveAs方法将工作簿保存为PDF格式。这要求安装有支持PDF输出的Office版本,或者使用第三方库进行转换。 5. **vc_to_pdf库**:一些开源项目提供了从VC++直接转换到PDF...
ThisWorkbook.SaveAs "临时Excel文件路径.xlsm", xlOpenXMLWorkbookMacroEnabled Application.DisplayAlerts = True ' 创建Acrobat PDF文档对象 Set AcroDoc = CreateObject("AcroExch.PDDoc") ' 加载Excel...
在安装"Save As PDF and XPS"后,用户会在Office应用程序(如Word、Excel、PowerPoint)的"文件"菜单中看到新增的"另存为PDF或XPS"选项。点击这个选项,用户可以选择保存为PDF或者XPS格式。保存过程中,软件会自动...
在处理完数据后,我们可以调用`SaveAs`方法,但不是保存为Excel格式,而是转换为PDF格式。 转换过程可能涉及以下步骤: 1. 创建一个`Excel.Application`对象实例,这是与Excel应用程序交互的基础。 2. 使用`...
标题中的“Excel、Word转PDF时,异常com.jacob.com.ComFailException: Invoke of: SaveAs”是一个关于在编程环境中转换Microsoft Office文档(如Excel和Word)为PDF格式时遇到的错误。这个错误通常与使用Jacob库进行...
在Word到PDF的转换过程中,Jacob会利用Word提供的“Save As PDF or XPS”功能。这个功能通常需要在Microsoft Office中安装特定的插件,如压缩包内的"SaveAsPDFandXPS.exe"。这个插件使得Word文档可以被保存为PDF或...
然后,找到并点击“Save As”(另存为)选项,接着在弹出的对话框中选择“PDF”作为保存类型。这样,Excel文件就会被转换为一个PDF文档,其名称和保存位置由用户自定义。 “Readme-说明.htm”文件是关于软件使用和...
3. 调用 `Workbook` 类的 `SaveAsPDF` 方法,指定目标 PDF 输出路径,完成转换。 4. 为了将流直接导出,可以使用 `OutputStream`,将转换后的 PDF 直接写入流,供后续处理或下载。 在实际开发中,你可能还需要处理...
方法: 只要安装完后直接打开EXCEL,左上脚就有个 save as pdf 按钮 2. 有时候我们一张EXCEL里面有很多的工作表sheet1,sheet2......sheetn,如何把这边合并成一个工作表SHEET呢? 方法: 只要拷贝以下代码,在想要...
加载完Excel文件后,我们可以使用`SaveAsPdf`方法将其保存为PDF格式: ```csharp workbook.SaveToFile("output_path.pdf", FileFormat.PDF); ``` 这里的`output_path.pdf`是转换后的PDF文件路径。 4. 如果你...
这段代码首先启动Excel应用程序,然后打开指定的Excel文件,接着使用"SaveAs"方法保存为PDF格式,并关闭工作簿和Excel应用。注意,你需要根据实际的Excel文件路径和输出PDF文件路径替换代码中的字符串。 4. **运行...
- 对每个Excel文件,打开工作簿,调用`SaveAs`方法以PDF格式保存,然后关闭工作簿。 - 在转换过程中处理可能出现的错误。 8. **优化技巧**:为了提高效率,可以考虑使用多线程或异步处理,但这需要更深入的VBA和...
4. 转换工作表为PDF:通过`Workbook.SaveAs`方法,指定一个新的PDF文件路径,并设置`FileFormat`参数为`XlFileFormat.xlTypePDF`,这样就能将当前工作簿保存为PDF格式。 5. 关闭Excel对象:完成转换后,记得关闭...
wb.SaveAs pdfPath & Replace(fileName, ".xlsx", ".pdf"), xlTypePDF ' 关闭Excel文件 wb.Close SaveChanges:=False ' 获取下一个文件名 fileName = Dir Loop End Sub ``` 运行这个宏后,它会自动找到...
5. **导出为PDF**: Excel提供了一个`SaveAs`方法,通过指定不同的文件类型(如PDF),可以将当前工作簿保存为PDF格式。在这个过程中,Jacob会调用Excel的COM接口执行这个操作。 6. **关闭资源**: 转换完成后,确保...
例如,压缩包中的"SaveAsPDF.exe"可能就是一个这样的工具。安装并运行这个程序,它可以提供一个直观的界面,让你选择Excel文件并一键将其转换为PDF。这类工具通常能提供更多的自定义选项,如页面范围、质量设置等。 ...