java调用vba代码合成Excel
java可以调用wsf文件,通过vba代码来将多个excel合成为一个,代码如下。
// wsf文件路径
String wsf_path = "D:\1\combineExcel.wsf"
// 首先将所有需要合成的excel放到combineFilePath路径上
String combineFilePath = "D:\test\combine\";
// excelPatn是合成excel的文件路径
String excelPath = "D:\test2\combineFile.xlsx";String[] paras = new String[] { combineFilePath, excelPath };
Process process = combineUtil.runWsf(wsf_path, paras);
process.waitFor();
combineUtil如下:
public class CombineUtil{/*** 将wsf下载到temp目录* @param class1 当前class所在路径* @param fileName wsf文件名* @param path 需要生成的wsf所在路径* @return* @throws Exception*/public static String getFileFromClass(Class<?> class1, String fileName,String path) throws Exception {String filePath = path + "\\" + fileName;File file = new File(filePath);if (file.exists()) {file.delete();}file.createNewFile();InputStream inputStream = class1.getResourceAsStream(fileName);OutputStream os = new BufferedOutputStream(new FileOutputStream(filePath));int readLen = 0;byte[] buf = new byte[1];while ((readLen = inputStream.read(buf, 0, 1)) != -1) {os.write(buf, 0, readLen);}inputStream.close();os.flush();os.close();return filePath;}/*** 运行wsf* @param wsfPath wsf路径* @param paras 运行wsf给的参数* @return*/public static Process runWsf(String wsfPath, String[] paras) {Process proc = null;try {Vector<String> cmdVector = new Vector<String>();cmdVector.add("wscript");cmdVector.add(wsfPath);for (String para : paras) {cmdVector.add(para);}String[] cmd = cmdVector.toArray(new String[cmdVector.size()]);Runtime runtime = Runtime.getRuntime();proc = runtime.exec(cmd);} catch (IOException e) {e.printStackTrace();} catch (Exception e) {e.printStackTrace();}return proc;}
}
java调用vba代码合成Excel相关推荐
- 指定单元格里面的,内容发生变化,触发事件,调用VBA代码。
指定单元格里面的,内容发生变化,触发事件,调用VBA代码._sun0322-CSDN博客_单元格变化触发vba 目录 ■通过改变一个单元格的内容,出发一个事件,根据改变的内容,进行相应的处理. ■扩展 ...
- java 调用window程序_Windows下Java调用可执行文件代码实例
这篇文章主要介绍了Windows下Java调用可执行文件代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 缘起: 由于没有找到java转换文件 ...
- excel查找功能_如何使用VBA代码实现Excel的查找和替换功能?
每天一篇Excel技术图文微信公众号:Excel星球NO.145-I Find You作者:看见星光微博:EXCELers / 知识星球:Excel HI,大家好,我是星光.这章继续给大家分享VBA常 ...
- 使用JNA,让java调用原生代码
JNA定义: JNA:java Native Access,是SUN公司开发的基于JNI的框架.JNI使得Java可以调用原生的c或者c++代码. JNA与JNI(Java Native Interf ...
- 01_JNI是什么,为什么使用,怎么用JNI,Cygwin环境变量配置,NDK案例(使用Java调用C代码),javah命令使用
1 什么是JNI JNI Java本地开发接口 JNI是一个协议,这个协议用来沟通java代码和外部的本地代码(C/C++) 通过这个协议,java代码就可以调用外部的C/C++代码,外部的C/C++ ...
- java调用python代码
同样的我们需要安装jython,具体的步骤如下: 1. 去 http://sourceforge.net/projects/jython/ 下载最新的jython相关的jar包. 2. 下载下来的ja ...
- java调用javafx_Java代码调用JavaFX的例子(大力推荐)
在JavaFX 1.0发布之后,本人撰写的文章JavaFX和Java之间的互操作性被各网站转载.文中总结了3种从Java调用JavaFX的方法.这三种方法分别为: http://www.javafxb ...
- 利用VBA代码解决Excel下拉菜单跳过空单元格的问题
一.问题描述 利用Excel制作下拉菜单,当某一列有空白单元格时,如下图所示 在下拉菜单中,也会存在空白单元格 常规制作下拉菜单的方法没有办法避免该问题,所以需要利用VBA解决这个问题 二.解决方法 ...
- 【VBA】 将VBA代码插入Excel中
将VBA代码插入到非宏Excel的Sheet表代码中,常用于达到单元格SelectionChange的效果,其他意义不大. 使用目的: (1)用户能够对SelectionChange事件的有效无效进行 ...
- JNI实现Java调用C代码Demo AndroidStudio
JNI(Java Native Interface)的本意是Java本地调用,它是为了方便java调用C/C++等本地代码所封装的一层接口 Android NDK(Native Development ...
最新文章
- 避免神经网络过拟合的5种技术
- Mac休眠后解决卡死转圈问题
- 拓展编辑器(五)_监听事件
- 大学阶段总结——大一
- python 词云手把手_手把手教你用python制作属于你的第一个词云
- 年轻人应该谨记的十点
- WPF的二维绘图(一)——DrawingContext
- 我的内核学习笔记15:海思Hi3516平台GPIO使用记录
- windows下PL/SQL Developer连接Orcale
- 找回华为云删除的通讯录_找回小米手机误删照片只要10秒!人人都知道的方法,你怎能不知道...
- 通过Callable和FutureTask创建线程
- latex毕业论文模板(附源码)
- 虚拟机中【临时使用】泰阿红队单兵作战系统(TaieRedTeamOS)
- 环境规划与管理--知识点总结
- Codeforces 1071C Triple Flips 构造
- mysql统计字数_使用SQL确定文本字段的字数统计
- 已有虚拟磁盘多个vmdk文件导入虚拟机
- 2018-2019年度学习计划
- VSCode中Markdown 无法显示图片
- android 消息轮训,Android消息机制Handler,有必要再讲一次