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相关推荐

  1. 指定单元格里面的,内容发生变化,触发事件,调用VBA代码。

    指定单元格里面的,内容发生变化,触发事件,调用VBA代码._sun0322-CSDN博客_单元格变化触发vba 目录 ■通过改变一个单元格的内容,出发一个事件,根据改变的内容,进行相应的处理. ■扩展 ...

  2. java 调用window程序_Windows下Java调用可执行文件代码实例

    这篇文章主要介绍了Windows下Java调用可执行文件代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 缘起: 由于没有找到java转换文件 ...

  3. excel查找功能_如何使用VBA代码实现Excel的查找和替换功能?

    每天一篇Excel技术图文微信公众号:Excel星球NO.145-I Find You作者:看见星光微博:EXCELers / 知识星球:Excel HI,大家好,我是星光.这章继续给大家分享VBA常 ...

  4. 使用JNA,让java调用原生代码

    JNA定义: JNA:java Native Access,是SUN公司开发的基于JNI的框架.JNI使得Java可以调用原生的c或者c++代码. JNA与JNI(Java Native Interf ...

  5. 01_JNI是什么,为什么使用,怎么用JNI,Cygwin环境变量配置,NDK案例(使用Java调用C代码),javah命令使用

    1 什么是JNI JNI Java本地开发接口 JNI是一个协议,这个协议用来沟通java代码和外部的本地代码(C/C++) 通过这个协议,java代码就可以调用外部的C/C++代码,外部的C/C++ ...

  6. java调用python代码

    同样的我们需要安装jython,具体的步骤如下: 1. 去 http://sourceforge.net/projects/jython/ 下载最新的jython相关的jar包. 2. 下载下来的ja ...

  7. java调用javafx_Java代码调用JavaFX的例子(大力推荐)

    在JavaFX 1.0发布之后,本人撰写的文章JavaFX和Java之间的互操作性被各网站转载.文中总结了3种从Java调用JavaFX的方法.这三种方法分别为: http://www.javafxb ...

  8. 利用VBA代码解决Excel下拉菜单跳过空单元格的问题

    一.问题描述 利用Excel制作下拉菜单,当某一列有空白单元格时,如下图所示 在下拉菜单中,也会存在空白单元格 常规制作下拉菜单的方法没有办法避免该问题,所以需要利用VBA解决这个问题 二.解决方法 ...

  9. 【VBA】 将VBA代码插入Excel中

    将VBA代码插入到非宏Excel的Sheet表代码中,常用于达到单元格SelectionChange的效果,其他意义不大. 使用目的: (1)用户能够对SelectionChange事件的有效无效进行 ...

  10. JNI实现Java调用C代码Demo AndroidStudio

    JNI(Java Native Interface)的本意是Java本地调用,它是为了方便java调用C/C++等本地代码所封装的一层接口 Android NDK(Native Development ...

最新文章

  1. 避免神经网络过拟合的5种技术
  2. Mac休眠后解决卡死转圈问题
  3. 拓展编辑器(五)_监听事件
  4. 大学阶段总结——大一
  5. python 词云手把手_手把手教你用python制作属于你的第一个词云
  6. 年轻人应该谨记的十点
  7. WPF的二维绘图(一)——DrawingContext
  8. 我的内核学习笔记15:海思Hi3516平台GPIO使用记录
  9. windows下PL/SQL Developer连接Orcale
  10. 找回华为云删除的通讯录_找回小米手机误删照片只要10秒!人人都知道的方法,你怎能不知道...
  11. 通过Callable和FutureTask创建线程
  12. latex毕业论文模板(附源码)
  13. 虚拟机中【临时使用】泰阿红队单兵作战系统(TaieRedTeamOS)
  14. 环境规划与管理--知识点总结
  15. Codeforces 1071C Triple Flips 构造
  16. mysql统计字数_使用SQL确定文本字段的字数统计
  17. 已有虚拟磁盘多个vmdk文件导入虚拟机
  18. 2018-2019年度学习计划
  19. VSCode中Markdown 无法显示图片
  20. android 消息轮训,Android消息机制Handler,有必要再讲一次

热门文章

  1. 聚合支付备案最全机构名单及分析(截至22年1月7日)
  2. pc模式 华为mate30_华为Mate30手机怎么投屏到电脑上呢
  3. Qt学习——任务一:按钮点击打开和关闭窗口
  4. Java垃圾回收的时间点
  5. 2022年信息安全工程师考试知识点:网络安全防御
  6. 软考信息安全工程师知识总结
  7. android 颜色抓取工具,颜色抓取(Color Grab)
  8. 新手微商代理怎么推广产品 微商大咖分享方法值得借鉴
  9. 【idea打包jar包+运行jar包】亲测详解
  10. A3C——pytorch