表格数据复制到子表单
1. 简介
1.1 案例简介
本文将介绍,如何将 Excel 等表格中的数据复制到简道云子表单中,快速完成表格信息的拆分和录入,点击安装模板。
1.2 应用场景
本案例适用于在 Excel 等表格中已有数据,需要将其快速填写到子表单的场景,如:
- 设备管理中,在 Excel 中已有设备基础信息的清单,可以将设备信息复制到子表单中进行录入;
- 产品管理中,在 Excel 中已有产品明细表,可以将产品信息复制到子表单中进行调用;
- 活动报名中,在 Excel 中已有报名信息表,可以将报名信息复制到子表单中进行统计等。
1.3 设计思路
1)将复制的表格数据按照换行符分割至每行;
2)将单行数据按照“\t ”分割至每列;
3)最后,将数据填写进对应子表单子字段中。
1.4 预期效果
复制 Excel 表格中的数据到多行文本字段,即可自动拆分数据至子表单中,效果如下:
注:由于安装模板时限制单个表单数据最多为 100 条,故安装模板体验效果时,需要重新按照【2.2 「子表单基础表」录入数据】的步骤录入数据才能成功实现效果,否则将无法体验。
2. 设置步骤
在学习之前建议安装 表格数据复制到子表单 应用模板,本文将按照模板中的示例数据进行讲解。
以复制 Excel 中「报名信息表」的数据到子表单为例:
2.1 表单搭建
1)新建「报名信息录入」表单,字段设置如下:
字段名称 | 字段类型 |
将表格信息粘贴至此处 | 多行文本 |
数据行数 | 数字 |
报名名单 | 子表单 |
序号 | 子字段-数字 |
姓名 | 子字段-单行文本 |
性别 | 子字段-单行文本 |
年龄 | 子字段-单行文本 |
拆分单行数据 | 子字段-单行文本 |
2)新建「子表单基础表」辅助表单,字段设置如下:
字段名称 | 字段类型 |
总行数 | 数字 |
子表单 | 子表单 |
序号 | 子字段-数字 |
数字 | 子字段-数字 |
2.2 「子表单基础表」录入数据
1)在「子表单基础表 >> 数据管理 >> 导入」处导入附件中的示例数据:200行子表单基础表序号全集.xlsx。
2)导入数据时需确认示例数据和表单字段的关联关系如下:
2.3 设置数据联动
1)进入「报名信息录入」表单,选中「报名表单」整个子表单,在「字段属性 >> 默认值」处,设置选项为「数据联动」,点击「数据联动设置」:
2)进入数据联动设置页面,设置内容如下:
- 联动表单:「子表单基础表」;
- 条件设置为:「总行数」等于「数据行数」;
- 触发联动:
- 「报名表单」字段显示「子表单」字段的值;
- 添加「序号」子字段,显示为「序号」子字段的值;
全部设置完成点击「确认」。
2.4 设置公式
1)选中「数据行数」字段,在「字段属性 >> 默认值」处,设置默认值为「公式编辑」,点击下方「编辑公式」:
2)在公式编辑页面,设置「数据行数」字段的公式如下:
COUNT(SPLIT(将表格信息粘贴至此处,CHAR(10)))
表示将复制的数据按照换行符进行分割,计算复制数据的行数。
设置好记得点击「确定」保存。
3)按照同样的方法,设置其他字段的公式如下:
- 报名名单.拆分单行数据:
SPLIT(将表格信息粘贴至此处,CHAR(10))[报名名单.序号-1]
表示将复制的数据按照换行符进行分割,取出对应一行的数据。
- 报名名单.姓名
SPLIT(报名名单.拆分单行数据,"\t")[0]
表示将该行数据按照“\t”进行分割,并取出其中第一列的数据。
- 报名名单.性别
SPLIT(报名名单.拆分单行数据,"\t")[1]
表示将该行数据按照“\t”进行分割,并取出其中第二列的数据。
- 报名名单.年龄
SPLIT(报名名单.拆分单行数据,"\t")[2]
表示将该行数据按照“\t”进行分割,并取出其中第三列的数据。
注:此处表单设计以取三列数据为例,实际使用时,可根据需求自行调整字段个数。
2.5 设置字段显隐规则
1)对于表单中的辅助字段,可以在「字段属性 >> 字段权限」处设置字段为不可见,仅保留如下字段可见:
- 将表格信息粘贴至此处
- 报名名单:姓名、性别、年龄
2)在「表单属性 >> 不可见字段赋值」处,设置赋值规则为「始终重新计算」:
2.6 效果演示
效果演示参见本文【1.4 预期效果】。