跳转至

08 工作簿和工作表操作

在本文中,我们主要讲解工具箱中对工作簿和工作表操作的内容,大家可以在这个选项卡下找到:

批量合并工作簿/工作表

一、批量合并工作表

这个按钮的功能是将当前工作簿中的所有选中的工作表合并到一个工作表中,比如我们选中 1月-3月 这三个sheet,每个sheet都是如下的结构:

点击之后,会询问你表头有多少行,比如上面是1行就填入1行,如果你是多行表头,根据具体情况填入即可,运行结束后得到一个新的sheet,并且最终的结果如下:

生成的工作表名字命名规则默认为 合并数据_mmss(mm为当前时间的分钟,ss为当前时间的秒)

二、批量合并工作簿

使用此功能可以实现将若干工作簿中 第N个工作表 合并到一个工作簿中等多个功能,以下是其功能界面:

参数解释:

  • 每个工作簿中第N个表:最后合并的结果就是所有工作簿中第N个工作表被整合成一个工作簿
  • 名字为xxx的表:最后合并的结果是所有工作簿中名字为xxx的工作表被整合成一个工作簿
  • 每个工作簿中所有的表:可以将每个工作簿中的所有工作表合并到一个工作簿中

上面的功能都是默认不将工作表合并到一个sheet的,比如我有3个工作簿,每个工作簿都有一个名为 数据 的工作表,合并后的工作簿中,会有3个sheet,分别对应的是3个工作簿中的 数据 工作表。

如果你想要在合并工作簿的同时,将所有工作表合并到一个sheet中,需要勾选 合并到一个sheet 复选框,告知表头有多少行即可

1.0.7 版本之后,界面新增了 输出合并报告 复选框,勾选后可以在合并表格的同时,输出一个名为 合并报告 的sheet,其中包含了合并文件的主要状态信息如下:


批量拆分工作表

一、单列拆分工作表

比如我们有这样一张表,然后我们需要根据对应的字段拆分成多个sheet:

此时可以使用 单列拆分工作表 功能,其具体功能界面如下:

参数解释:

  • 表格标题:指的是当前要拆分的sheet表头一共多少行
  • 根据第X列拆分:你选择对应的字段,就上图而言,C列代表根据部门拆分,F列代表根据月份拆分
  • 存放位置:可以存放在当前工作簿(新建sheet),也可以存放在新的工作簿(新建xlsx文件)

下面是根据部门(C列)拆分的结果:

其中每个子表的结果如下:

如果选择新的工作簿,要选择存放的文件夹路径,生成结果会在该文件夹下创建一个拆分结果的文件夹,生成对应的xlsx文件:

二、多条件拆分工作表

如果你需要根据多字段拆分,比如下面这样的表:

你需要根据月份(A列)和部门(B列)拆分,可以使用此功能,其功能界面如下:

参数解释:

  • 表头多少行:指的是当前要拆分的sheet表头一共多少行
  • 根据哪几列拆分:你可以选择多个字段,比如上图中选择A列和B列,就代表根据月份和部门拆分,内部会进行排列组合
  • 存放位置:可以存放在当前工作簿(新建sheet),也可以存放在新的工作簿(新建xlsx文件)

下面是根据月份(A列)和部门(B列)拆分的结果:

其中每个子表的结果如下:

如果你选择存放在新的工作簿,要选择存放的文件夹路径,生成结果会在该文件夹下创建一个拆分结果的文件夹,生成对应的xlsx文件:

三、工作表拆为工作簿

此功能支持你将当前工作簿中所有选中的工作表按单个sheet导出工作簿,具体效果如下:

注意如果是只选中一个sheet,则只会导出一个工作簿文件,如果选中多个,可以自己命名一个文件夹,将所有的文件都放到这个文件夹中,导出过程中底部状态栏有进度提示

四、快捷筛选导出

此功能支持你多条件筛选,根据筛选条件导出符合条件的工作表。具体功能界面如下:

参数说明:

  • 标题行数:标题有多少行,默认是1行
  • 数据区域:你要筛选导出的数据源区域
  • 参与筛选列:可以在左侧勾选你要筛选条件,比如根据所在城市,期望年薪等
  • 筛选条件:可以设置单个条件,也可以设置两个条件,例如大于30且小于50(需要将第二条件选上)

左下角可以看到所有已经添加的条件,右侧可以勾选需要导出的列,默认是全部列,导出支持 导出到新工作表或者 导出到新工作簿两种方式,也可以在单行标题的时候,默认帮你设置超级表样式,比如上图所示结果如下:


汇总功能

一、工作表行数汇总

执行此功能,会新建一个sheet,sheet名为 行数汇总,并在该sheet中汇总当前工作簿所有工作表行数,提供跳转链接,如下:

二、三维表汇总

在工作中我们经常会遇到需要将3维数据汇总成3列的情况,这里主要考虑了表头为单行/两行的情况,界面如下:

参数解释:

  • 数据源区域:指的是要汇总的源数据区域
  • 结果存放在:指的是汇总结果要存放的位置,只填写左上角单元格即可
  • 表头数量:指的是3维数据中的表头行数,可以选择1行或2行
  • 汇总维度:只在 表头数量 为2行时生效,选择第一行根据第一行汇总,选择第二行根据第二行汇总

具体效果也可以参考界面上对应的图片解释,我这里也放出来,作为参考:

示例1:单行汇总

示例2:表头为两行,根据第1行汇总

示例3:表头为两行,根据第2行汇总

三、快捷填取

此功能可以实现我们将总表的数据分填到模板分表中,也可以实现将分表中的数据汇总到一个总表中,以下面数据进行演示:

界面一共有两页,第一页的 总表做分表 其实就是实现上面一个过程,默认总表是当前活动的sheet,所以如果你要使用这个功能,请先定位到总表,然后再点击按钮打开界面,第一页如下图所示:

按照序号的顺序,我们可以依次设置参数:

  • 总表:默认是当前活动工作表,默认表头一行,一行的时候会根据表头识别可匹配字段
  • 字段对应:可以依次设计你的哪个字段要填到哪个单元格中,并点击 添加/更新
  • 分表模板:可以从当前活动工作簿选择一个sheet,也可以从其他文件选择一个sheet
  • 输出方式:输出方式分为三种
    • 输出到当前活动工作簿(每行一个工作表):会在当前工作簿输出若干个sheet
    • 新建一个工作簿(每行一个工作表):会新建一个工作簿将所有结果每行一个sheet存放
    • 每个sheet单独作为一个工作簿:将每一行的结果都单独存为一个工作簿(此时需要选择存放路径)

最后总表填入分表模板的效果如下图:

第二页的 分表汇总表 主要实现的是,将各个分表里面指定单元格的数据按字段整理到一张总表中,也就是实现如下效果:

第二页界面如图:

我们的分表可以从当前活动工作簿中选取,也可以通过选择文件导入若干个文件,然后指定文件中的第X个,或者名字为XX的工作表,将其中对应的字段提取出来,在右侧 单元格与字段对应 部分,可以设置对应关系,最后点击 生成汇总表 即可。


新建功能

一、批量工作表

选中区域执行此功能,会在当前工作簿根据每个单元格的值新建若干个sheet,每个sheet的名字就是对应单元格的值,如下:

二、批量word文档

此功能支持你根据数据源和docx模板文件,将数据源填入模板文件中,生成对应的word文档。

首先你需要准备好数据源和模板文件,数据源为xlsx文件,模板文件为docx文件,如下:

对于模板文件,你需要在模板文件中使用 {{}} 来表示要填入的变量(变量和数据源中的列名保持一致,如上图中的{{姓名}}{{排名}}{{奖项}}),功能界面如下:

参数解释:

  • 数据源:指的是你要填入的数据源
    • 当前活动工作表:指的是当前打开的工作表,会将当前活动工作表中的数据填入模板文件中
    • 选择一个工作表:通过文件浏览选择要填入的工作表
  • 模板:指的是你要使用的模板文件,一般是一个docx文件,通过浏览选取
  • 存放位置默认存放在模板文件目录下,所有生成的文件会以第一列的值作为文件名,具体效果如下:

可以看到每一份文件中,对应的位置都被替换为了数据源中的值,如下:

去重功能

这个选项卡提供了你去重的功能,你可以选择去重的列,可以是单列也可以是多列,也可以选择要保留哪些列,去重后会在当前工作簿中新建一个sheet,sheet名为 唯一值,并在该sheet中展示去重后的结果,具体功能界面如下:

参数解释:

  • 表头多少行:指的是当前要去重的sheet表头一共多少行
  • 去重的列:你可以选择多个列,比如我们通过B、C、D、F列去重
  • 保留哪些列:你可以选择多个列,比如上图中选择保留所有列
  • 去重方式
    • 保留唯一值:只保留唯一值,其他重复的行会被删除
    • 保留重复值:只有重复的值会被保留下来,其他的行都会被删除
    • 保留仅出现过一次的值:只保留那些出现过一次的值,任何重复的值都会被删除

数据源如下,演示效果为让每个人每天只有一次上班打卡记录和下班打卡记录,去重前后对比如下:

去重前:根据B、C、D、F列去重(要求这几列的值完全一样才重复),保留所有列

去重后:重复的行已经被去重,保留了第一次出现的行

更多功能

一、批量保护工作表

在此选项卡下,目前可以实现批量保护工作表,其具体功能界面如下:

参数解释:

  • 保护级别
    • 只能查看:用户只能查看工作表的内容,不能修改任何单元格的内容、格式或样式
    • 格式可编辑:用户可以修改单元格的格式(如字体、颜色、边框等),但不能修改单元格的内容
  • 保护区域
    • 整个工作表:保护整个工作表,包括所有单元格
    • 指定区域:仅保护工作表中的指定区域,其他区域不受保护
  • 保护密码:输入密码,用于保护工作表,建议设置一个复杂的密码,防止他人误操作
  • 保护的表:可以选择当前工作簿中的所有工作表或选中的工作表

1.0.6 版本之后,增加了隐藏公式的功能,可以在界面上勾选此复选框,如下图:

即可将公式隐藏起来(公式只是看不见,但是执行逻辑还在),具体效果如下,E列原来是有公式的,但是保护后看不见:

注:密码也可以不输入,这样是为了方便自己操作,后续无需密码即可撤销工作表保护

二、工作表水印

这个功能卡,可以帮助你设置工作表水印,便捷打印,支持单个中心水印和九宫格水印两种方式,具体界面如下:

参数解释:

  • 目标工作表:指的是你要设置水印的工作表,可以批量设置
  • 水印类型仅文字水印仅图片水印文字水印与图片水印三种类型
  • 文字设置:可以设置文字的具体内容,字号,颜色,加粗,斜体和下划线等样式
  • 水印效果:可以设置水印的具体角度,透明度,行列偏移(用于有的时候你设置了页边距,水印位置可略微修正的情况),行偏移上下移动,列偏移左右移动
  • 图片设置:可以设置图片的具体路径,不设置的话默认用系统图片
  • 真实预览效果:由于水印设置和电脑DPI,页边距等设置有联系,因此右侧的预览效果只是作为参考,实际渲染效果可以点击此按钮查看,只是建立一个临时表供查看效果,不会影响原始工作表
  • 开始插入页面水印:点击此按钮,即可确认设置,将水印应用到目标工作表中

以下展示两种情况下的文字水印设置效果(每一页都有):

三、工作表对比

此功能,可以帮助你更快地对比两块区域或者两个工作表指定区域之间的差异,具体效果和界面截图如下所示:

  • 区域选择: 可以选择要对比的区域,当前表的两块区域或两个工作表的两块区域
  • 忽略差异
    • 忽略大小写:忽略大小写差异,如果字母大小写不同,则不会识别为差异
    • 忽略首尾空格:忽略首尾空格,对比时会忽略首尾的空格
    • 中英文分号、逗号和冒号:忽略中英文分号、逗号和冒号差异,对比时会忽略这些符号的半角和全角格式
  • 清除原有背景色:着色前会清除单元格原本的背景色

另外在界面中可以自定义标记颜色,如果两块区域大小不一致,会对比两块区域中重合的位置,最后给两块区域同时着色

四、快捷匹配

此功能可以理解为一个界面化操作的XLOOKUP函数,不过会比函数有更多可以支持的点,以下是它的界面:

参数解释:

  • 数据源部分
    • 主表区域:你要根据什么查找,比如根据工号的这一列,还是根据部门/姓名这两列,即查找依据
    • 副表区域:你要查找的区域,即完整的数据源
  • 设置关键列部分
    • 主表键和副表键:一般默认是一对就行,也就是主表的单列和副表的单列一一对应,当然也可以多个键值对应,这个我们后面会提
    • 忽略大小写:文本匹配时不区分大小写,例如 abc 和 ABC 视为相同。
    • 忽略首尾空格:忽略首尾空格,对比时会忽略首尾的空格
    • 空关键值跳过:主表/副表关键列为空时不参与匹配,主表空关键值会按“未匹配值”输出。
    • 数字文本同值:把能识别为数字的文本按数字比较,例如 1、1.0 视为相同。这个默认没勾,因为像员工 ID 001 和 1 是否应相同取决于业务场景。
  • 匹配规则部分
    • 重复键时:即如果在数据源中能找到多个匹配项,那是 只返回第一个返回最后一个还是 合并结果
    • 合并分隔:选择 合并结果 的时候有效,用于分隔多个匹配到的结果,比如用分号分隔
    • 未匹配值:如果未找到匹配的数据,返回什么,默认是空字符串

最后右侧可以 选择返回字段输出位置预览效果,当根据单列匹配的时候,效果如下:

如果要根据多列来进行匹配,则可以通过添加键的方式实现,如下图部门和部门匹配,姓名和姓名匹配:

得到的效果如下图所示:

五、表名规范

当你的工作表或者工作簿中有一些特殊符号,比如 -、/、\、*、?、"、<、>、| 等,需要规范处理的时候,可以使用这个功能

界面一共有两页,第一页主要是当前工作簿中的工作表名规范,第二页可以根据文件夹的文件进行批量规范命名,第二页中

  • 规范所选工作簿名:指的是你选中的这写工作簿只改工作簿的名字
  • 规范所有工作簿名:指的是不光规范工作簿的名字,还会规范工作簿中的所有工作表名

效果如下:

如果遇到规范后重命的情况,会自动增加区分后缀以避免冲突

六、即点即筛

当你框选一块区域后,可以启用 即点即筛 功能,后面当你点击此区域中的任意一个单元格时,就会打开一个窗口,将以此单元格为条件筛选后的数据显示在界面中,方便你快速筛选定位数据,界面如下所示:

默认框选区域的第一行是表头,如上图所示,点击任意一个Jerry单元格后,界面中出现的所有信息均为此区域内产品经理是Jerry的结果,同样在界面中

  • 可以通过双击单元格修改任意的信息,修改后会同步修改源数据
  • 可以删除空行,来清除不需要的信息,源数据中同样会删除这一行
  • 可以查找信息,帮助你在既有筛选条件下快速定位信息

可以追加筛选,比如我继续追加一个产品类别应为电子产品,则界面中会显示同时满足两个筛选条件的产品信息

界面上,任何一个表头都是可以点击实现根据该列 升序排序 或者 降序排序 的,可以通过 导出到sheet 或者 导出到工作簿 将筛选后的信息导出到对应位置,终止筛选 后当你点击区域内的单元格后,将不再显示界面。