ExcelMate 应用用于处理 Excel 文件,包含 csv 格式,可使用多种简单的条件搜索数据,并将不同条件的 Excel 数据定制输出为自己想要的数据格式。
假设 Excel 数据如下:
| A | B | C | D |
|---|---|---|---|
| 时间 | 交易对象 | 金额 | 描述 |
| 2022-02-08 | 建设银行 | 20 | 我还款了 |
| 2022-03-08 | 招商银行 | -20 | 我借钱了 |
A - Z 的大写字母名称表示对应哪一列的数据。
如果某一列你认为是数字,则需要 number(C) 这样写,表示 C 列是数字。
number(C) > 0 查找 C 列大于 0 的数据。
number(C) < 0 查找 C 列小于 0 的数据。
number(C) >= 0 查找 C 列大于等于 0 的数据。
number(C) <= 0 查找 C 列小于等于 0 的数据。
B == "建设银行" 查找 B 列为 “建设银行” 的数据。
B != "建设银行" 查找 B 列不是 “建设银行” 的数据。
D matches "还款" 模糊匹配 D 列数据中包含 “还款” 字样的数据。
B == "建设银行" and D matches "还款" 使用 and 表示这两个条件都满足。
B == "建设银行" or D matches "还款" 使用 or 表示这两个条件有一个满足就行。
模板的作用是拿条件匹配的数据组装自己想要的最终内容。
模版完整语法请看:
当然看这个会很复杂,我简单列举下常见的使用 。
{{.A}} 使用双括号、英文句号、列名组装一块,表示取出 A 列的数据。
拿 Beancount 格式举个例子。
{{.A}} * "{{.B}}" "{{.D}}"
Expenses:Others {{.G}} CNY
Assets:Card:CCB
如果 Excel 中的时间不是自己想要的格式,有两种办法解决。
- 使用 Excel 软件处理好。
- 使用 模板语法。
展开说说模板语法:
- 数据
2023-01-27 19:51:41,目标2023-01-27,模板语法{{toDate "2006-01-02 15:04:05" .A | date "2006-01-02"}}
想简单点可使用 自由截取数据函数 语法。
假如 A 列的数据类似 服务费¥20.12,但你只想要其中的数字。
{{trimPrefix "服务费¥" .A}}去除前面 “服务费¥” 字符{{trimSuffix "后面字符" .A}}去除后面的字符{{trimAll "前后字符" .A}}去除前面和后面的字符
假设 A 列有一串数据 2023-01-27 19:51:41,我只想要 2023-01-27 数据,那从 0(第一位) 开始数到空格(27后面)位置 10,模板语法 {{substr 0 10 .A}}
- 数据
服务费¥20.12,只要20.12,但可能数字位置的长度不一定,例如:服务费¥200.12,模板语法{{substr 4 -1 .A}} {{substr [start] [end] 数据}}start 和 end 表示起始索引(从0开始的位置编号),如果为 -1 则表示最开头或最结尾。
- 发布 Mac 版本
- 增加输出结果下载
- 窗口尺寸调节
