|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
本帖最后由 kaixinbuy 于 2023-4-5 18:39 编辑
参考下面的SQL进行定制和修改,一个SQL实现对不规范的,格式不统一的非结构化Excel进行抽取,整合
将下面SQL中的字段名,改为你的报表中需要的字段名,不用管原始表格的布局。
- INSERT into tb_results --抽取结果保存到数据库表
- SELECT name,--抽取字段表头,最大1000个字段name as fieldname,--传统的SQL字段,匹配Excel表头
- `regular_expression` as fieldname,--用正则匹配多个可能的表头值,例如(产品名称|产品名|商品名|ProductName)
- `regular_expression`.match(text) as fieldname,--基于文本匹配表头(默认不写match部分就是匹配文本)
- `regular_expression`.match(text).output(color) as fieldname,--基于字体颜色去匹配表头
- `regular_expression`.match(text).offset(1,0).output(color) as fieldname,--提取某个匹配单元格的右边单元格的值
- FROM excels;--选择需要抽取的1-1000个sheet,同时运行数据抽取
复制代码
(注意:这个SQL是只能在tablemerge.com客户端才能支持的语法。在vba和传统数据库中是不能运行的)
需要一点SQL和正则表达式知识,不过绝大部分情况下参考SQL模板进行修改也能跑通。
|
|