Workflow的介绍

Workflow是一款实现自动化Excel操作的中文框架。

它底层是对VBA代码的封装,为了实现办公自动化而另学VBA和Python,对于大部分人都是比较困难的。

况且还需要查阅记忆对象模型,再加上微软系列的对象都看不到源码,查阅文档又是模糊不清的说法,有时候真的很让人抓狂。

所以之前就在想能不能做一个中文API的低代码框架,直接封装底层代码逻辑,用户只需要关心业务层面的逻辑即可。

Workflow的起源

虽然架构和前后端所有的代码都是我一点一点找文档敲的,但本质上Workflow这个创意并非是我独创的。

在我学习VBA的时候,就接触到了这个工具的雏形,所以才有了这样的灵感。

所以在我学完VBA和JAVA 之后就有了分享这款工具的想法,前端用VBA来做,后端用JAVA的Springboot来创建,才有了这款Workflow(联机版)。

Workflow的使用和操作

操作类型

参数1

参数2

参数3

参数4

参数5

创建工作簿

目标保存地址

打开工作簿

文件地址-必须填写完整的链接地址

可选项: 更新链接:0 - 不更新, 3 - 更新;是否只读打开:0 - 否, 1 - 是

可选项: 打开密码

可选项: 写入密码

关闭工作簿

文件名称-必须包含拓展名

更改工作簿密码

密码

工作簿名称(workbook)

保存工作薄

工作簿名称(workbook)

另存工作薄

工作簿名称(workbook)

目标地址

可选项: 保存格式 默认-xlsx 1-xls 2-xlsm 3-csv 4-txt

可选项: 打开密码

可选项: 写入密码

打开文件

运行程序

目标地址

复制文件

源地址

目标地址

删除文件

目标地址

移动或重命名文件

源地址

目标地址

获取文件名和工作表名称

文件夹地址

目标位置-工作簿名称;工作表名称;起始单元格位置

打开文件夹

目标地址

创建文件夹

目标地址

复制文件夹

源地址

目标地址

删除文件夹

目标地址

移动或重命名文件夹

源地址

目标地址

创建工作表

工作表名称(sheet)

工作簿名称(workbook)

可选项:放置位置   1 - 放前面,2 - 放后面(默认)

可选项:根据哪个工作表放,默认为最后一个

可选项: 是否替换存在 1 - 替换, 2 - 不替换(默认)

更改工作表名称

新名字

工作表名称(sheet)

工作簿名称(workbook)

复制工作表

工作表名称(sheet)

工作簿名称(workbook)

可选项:放置位置   1 - 放前面,2 - 放后面(默认)

可选项:根据哪个工作表放,默认为最后一个

可选项:复制完工作表重命名

提取工作表

多个工作表名称

工作簿名称(workbook)

可选项:保存地址

删除工作表

工作表名称(sheet)

工作簿名称(workbook)

移动工作表

根据哪个工作表放置

工作表名称(sheet)

工作簿名称(workbook)

可选项:放置位置   1 - 放前面,2 - 放后面(默认)

激活工作表

工作表名称(sheet)

工作簿名称(workbook)

保护工作表

密码

工作表名称(sheet)

工作簿名称(workbook)

解除保护工作表

密码

工作表名称(sheet)

工作簿名称(workbook)

选择区域

目标位置-工作簿名称;工作表名称;单元格范围 

复制单元格

源数据-工作簿名称;工作表名称;区间范围

可选项:目标位置-工作簿名称;工作表名称;单元格范围 

可选项: 默认(留空)- 正常粘贴, 1 - 只粘贴数值, 2 - 只粘贴格式, 3 - 只粘贴列宽,4 - 粘贴公式

可选项: 是否跳过空格 默认 - 不跳过 1 - 跳过

可选项: 默认 - 不转置; 1-转置粘贴

清空数据

目标位置-工作簿名称;工作表名称;单元格范围 

重置单元格

目标位置-工作簿名称;工作表名称;单元格范围 

可选项: 默认-自适应行高和列宽 1-不进行自适应

替换

旧数据

新数据

目标位置-工作簿名称;工作表名称;单元格范围 

可选项:是否全匹配 1 - 全匹配,0 - 部分匹配(默认)

可选项:是否区分大小写 1 - 否 2 - 是(默认)

粘贴

目标位置-工作簿名称;工作表名称;单元格范围 

特殊粘贴

目标位置-工作簿名称;工作表名称;单元格范围 

可选项: 默认- 正常粘贴, 1 - 只粘贴数值, 2 - 只粘贴格式, 3 - 只粘贴列宽,4 - 粘贴公式

可选项: 是否跳过空格 默认 - 不跳过 1 - 跳过

可选项: 默认 - 不转置; 1-转置粘贴

剪切

源数据-工作簿名称;工作表名称;区间范围

目标位置-工作簿名称;工作表名称;单元格范围 

可选项: 默认(留空)- 正常粘贴, 1 - 只粘贴数值, 2 - 只粘贴格式, 3 - 只粘贴列宽,4 - 粘贴公式

可选项: 是否跳过空格 默认 - 不跳过 1 - 跳过

可选项: 默认 - 不转置; 1-转置粘贴

填充

源数据-工作簿名称;工作表名称;区间范围

目标位置-工作簿名称;工作表名称;单元格范围 

可选项: 填充类型 默认-智能决定, 1 - 仅复制值, 2 - 仅格式, 3 - 不带格式复制, 4- 填充序列

添加评论

评论

目标位置-工作簿名称;工作表名称;单元格

填写单元格

目标位置-工作簿名称;工作表名称;单元格范围 

合并单元格

目标位置-工作簿名称;工作表名称;单元格范围 

拆分单元格

目标位置-工作簿名称;工作表名称;单元格范围 

自适应列宽或行高

目标位置-工作簿名称;工作表名称;行或列

显示/隐藏行列

目标位置-工作簿名称;工作表名称;行或列

显示/隐藏 默认 - 隐藏, 1 - 显示

插入单元格

目标位置-工作簿名称;工作表名称;单元格范围 

可选项: 向哪边移动单元格 默认 - 向下 1 - 向右

删除单元格

目标位置-工作簿名称;工作表名称;单元格范围 

可选项: 向哪边移动单元格 默认 - 向上 1 - 向左

去重

目标位置-工作簿名称;工作表名称;单元格范围 

可选项: 单元格范围的哪几列 默认 - 第一列

分列

目标位置-工作簿名称;工作表名称;单元格范围 

可选项: 分隔符 默认-制表符, 0 - 空格, 1 - 制表符, 2 - 分号, 3 - 逗号, 4-其他 

可选项: 其他分隔符

排序

必选项: 排序字段 默认 - 按字段名, 1;按单元格

目标位置-工作簿名称;工作表名称;单元格范围 

可选项: 默认 - 升序, 1 - 降序

筛选

目标位置-工作簿名称;工作表名称;单元格范围 

默认 -关闭 1 - 开启

筛选第几列

筛选条件

更改字体颜色

RGB 参数

目标位置-工作簿名称;工作表名称;单元格范围 

更改字体大小

字体大小

目标位置-工作簿名称;工作表名称;单元格范围 

字体加粗

目标位置-工作簿名称;工作表名称;单元格范围 

可选项: 默认-加粗, 1 - 取消加粗

填充背景色

RGB 参数

目标位置-工作簿名称;工作表名称;单元格范围 

插入图片

图片文件地址

目标位置-工作簿名称;工作表名称;单元格范围 

复制图片

源位置-工作簿名称;工作表名称;图片名

可选项: 放置位置-工作簿名称;工作表名称;单元格

可选项: 图片重命名 默认 - 原名字前面加上c-

剪切图片/表格

目标位置-工作簿名称;工作表名称;图片名

删除图片/表格

目标位置-工作簿名称;工作表名称;图片名

重命名图片/表格

新的图片名

目标位置-工作簿名称;工作表名称;图片名

放大/缩小图片高度

倍数

目标位置-工作簿名称;工作表名称;图片名

可选项: 默认-根据图片原始大小 1-根据当前图片大小

放大/缩小图片宽度

倍数

目标位置-工作簿名称;工作表名称;图片名

可选项: 默认-根据图片原始大小 1-根据当前图片大小

翻转图片

目标位置-工作簿名称;工作表名称;图片名

可选项: 翻转方向 默认 - 水平翻转, 1 - 垂直翻转

更新数据透视表

目标位置-工作簿名称;工作表名称;数据透视表名称

添加超链接

超链接的地址

目标位置-工作簿名称;工作表名称;默认-单元格;1-图片图表;图片图表名或单元格

可选项: 鼠标悬浮时提示

可选项: 显示的文本

可选项: 默认- 无下划线, 1 - 单下划线

打开超链接

目标位置-工作簿名称;工作表名称;超链接

删除超链接

目标位置-工作簿名称;工作表名称;超链接

可选项: 是否一并删除超链接的文本 默认-删除, 1-不删除

发送Outlook邮件

标题

内容

收件人

附件地址

输出文本到txt

源数据-工作簿名称;工作表名称;单元格地址

txt文件地址

压缩

源文件地址

压缩包的位置

可选项: 密码

可选项: 默认-7zip, 1-winzip

可选项: 压缩程序位置

解压缩

解压的位置

压缩包的位置

可选项: 密码

可选项: 默认-7zip

可选项: 压缩程序位置

下载网络资源

网络资源路径

目标保存地址

运行指定宏程序

文件地址;模块名;方法名

目标位置-工作簿名称;工作表名称;单元格范围 

可选项: 参数1

可选项: 参数2

可选项: 参数3

Workflow的特殊说明

规则名

模式

说明

DATE

^^DATE:format,offset^^

Main工作表中可以放置日期,如果不防止默认为当天,format示例yyyyMMdd 代表20230301,offset 为0代表当天,-1代表上一个工作日;1代表下一个工作日

LASTDATA

^^LASTDATA:cells,direction,offset^^

direction:1 向上查找,2 向下查找,3 向左查找,4 向右查找; 上下查找行,左右查找列; offset负值为查找完成向上或向左偏移, 正值为向下或向右偏移

参数分割

;或者,

所有复杂参数都是用分号(;)分割,所有特殊标识内的参数使用逗号(,)分割

筛选

-

操作之前请确保excel的目标位置没有被筛选隐藏, 隐藏的单元格是无法操作的

复制文件

-

使用操作"复制文件"打开后的文件后续无法操作,打开excel文件请使用操作"打开Excel"

默认

-

若参数项存在默认可以直接留空

显示运行

-

1-开启,程序运行时可以直观看到,但速度会降低; 0-关闭,速度会有提升

登录密码

-

登陆密码后台也无法查询,如果忘记只能重新申请

地址

-

除了文件夹地址,其余地址都应当是路径+文件名

版本

1.0 框架基本完成

教程视频地址


https://space.bilibili.com/14481495/


Workflow下载地址

https://vipvan.cc/upload/Workflow.exe

Q.E.D.