6.1 定义重复数据项
单一数据项和重复数据项

图 6‑1订单表样
上图是我们要建立的《订单》模板的表样。如前所述,模板上可以填写内容的那些空白单元格称为“数据项”。在订单的表样上,有表头----2~4行的客户信息、表尾---第12行的审批信息,也有明细----7~10行的订货产品信息。我们说在《订单》模板上,有两种不同性质的数据项。
第一种,即表头和表尾处的空白单元格,为“单一数据项”。它们的特点是在一份表单上只出现一次。比如C3:F3处的“客户名称”,一份订单上只能有一个“客户名称”。
第二种,即明细中的空白区域,为“重复数据项”,它们的特点是在一份表单上会填多次,比如区域C7:C10处的“产品名称”,一份订单上会包括多种产品。该区域的每一行的单元格的内容都不一样,但它们都是“产品名称”。
建立《订单》模板
- 建立订单模板,表样如图 6-1 所示
- 权限设置为:
填报权限:Administrators、销售员
查阅权限:Administrators、总经理、销售部长、销售员。其中销售员只能查看本人填报的,其他角色能够查看全部。
- 输入若干 Excel 公式
单元格 / 区域 |
公式 |
作用 |
H7:H10 |
= F7*G7 |
金额=数量×单价 |
H11 |
=SUM(H7:H10) |
计算合计金额 |
- 把表头、表尾定义成单一数据项,组成数据表“订单 _ 主表”
主键 |
区域 |
字段名 |
数据类型 |
必填 |
填写规范 |
其它 |
√ |
C2 |
订单编号 |
文字 (20 字以内 ) |
√ |
|
不清空 |
|
E2:F2 |
订单日期 |
日期 |
√ |
当前日期 |
|
|
H2 |
录入人 |
文字 (20 字以内 ) |
√ |
当前用户姓名 |
|
|
C3:F3 |
客户名称 |
名称或地址 |
√ |
|
|
|
H3 |
客户编号 |
文字 (20 字以内 ) |
√ |
|
|
|
C4:F4 |
地址 |
名称或地址 |
|
|
|
|
H4 |
电话 |
文字 (100 字以内 ) |
|
|
|
|
C12 |
审批日期 |
日期 |
|
|
|
|
E12:F12 |
审批人 |
文字 (20 字以内 ) |
|
|
|
|
H12 |
审批意见 |
文字 (20 字以内 ) |
|
|
|
- 定义自动编号“订单编号”,设为“订单编号”字段的填写规范。
定义重复数据项,组成明细表
现在来把订单的明细部分定义成重复数据项。
- 在订单模板的设计状态下,选中区域 B7:H10 ,右击鼠标,选择弹出菜单“重复数据项”

图 6‑2选中要定义为重复数据项的区域
- 弹出如下图所示的“定义重复数据项”对话框,点击带图标的大按钮【按行】,上方标题行数 1 ,选中“数据区域可向下扩展”,按【下一步】。

图 6‑3
- 选择“组成新数据表”,命名为“订单 _ 明细”如图,按【下一步】

图 6‑4
- 选择各字段的数据类型,设置所有字段必填,点【下一步】。

图 6‑5
- 在下一屏上直接点【完成】,窗口关闭,回到订单模板的设计状态。
- 关闭并保存模板。
填报时扩充明细表的行数
在订单模板的表样上,我们只预留了4行明细的位置,但实际的订单可能不只4条明细。因为我们在定义“订单_明细”的重复数据项时,指定了“可向下扩展”,填报时,工作表的上方会出现“报表操作工具栏”。当输入焦点进入“订单_明细”表所在区域时,工具栏中的【插入行】和【删除行】按钮可选,如下图所示。通过这两个按钮,可以向明细表增加新行或删除多余的空行。

图 6‑6报表操作工具栏
关于“报表操作工具栏”上其它按钮的作用,我们会在后续的章节中陆续介绍。