用《华表》实现产品报价

Author: 赵建军 Date: 2000年 第27期

  《华表》是一种符合中国人使用习惯的电子表格软件。它集办公表格与数据表格处理于一身,既有电子表格灵活、易用的特点,又有类似数据库的数据查询功能,是财务人员、统计人员及管理者的好帮手。
  本人最近用它制作了一个PC机的报价方案,操作简单方便,而且有很多功能是用Excell无法实现的。现将该方案的实现过程简述如下:
#1  一、建立装机组件页
  1.打开《华表》软件(该软件演示版可从http:\\www.biaoge.com.cn下载)。
  2.选择“表页/插入表页”,根据需要填入页数。
  3.选择“表页/设置页签”,设置各页的页签。例如将各页签设置成“鼠标”、“光驱”、“显示器”等。
  4.设计表页,在相应的表页输入产品名称,价格,以及备注。主板页在做完之后,如^27050201a^1所示。
#1  二、设计装机单
  1.选择“表页/插入表页”,在第一页前再插入一页,设置页签为“装机单”,如^27050201b^2所示。
  2.以主板设置为例,选中B3单元格,选择“表格/单元格/类型”标签,设置B3单元格为“下拉窗口”。选择“参数设置”,在“下拉窗口数据源区域”中输入“a3:c50”,在“该区域所在页号”中选择主板所在的页号,本例中为“2”。连续单击“确定”,就会在B3单元格中看到一下拉按钮,单击该按钮,就会列出第2页A3:C50区域中的数据。如^27050201c^3所示:
  3.选中C3单元格,选择菜单“数据/输入公式”或直接按“=”,向C3单元格中输入公式select2d(B3:B52,A3=GetCell(2,row(),1),1,row()-1),如^27050201d^4所示,该公式说明如下:
  A.公式C3=select2d(B3:B52,A3=GetCell(2,row(),1),1,row()-1)等号后的单元格区域中不能包含等号前的单元格,否则会产生循环引用,即使在不同页也不可以。避免的方法是在建立装机组件页时,输入数据前应插入足够的行数,这样选择的区域就可能变成B100:B150,而不是B3:B52,这样可避免循环引用。
  B.要想使C3单元格中的数据随着下拉窗口中的数据更新而更新,则该公式中单元格的区域必须包含该下拉窗口单元格,如果没有时,可用下面公式进行强制更新:
  if(1,select2d(B3:B52,A3=GetCell(2,row(),1),1,row()-1),B3)。
  函数说明如下:
  a)SELECT2D(area,[expr],[no],[pageno])
  area为区域参数。例如∶A1:A3,C5:G7;
  expr为行筛选表达式,缺省为真,例如∶loopcell()>5;
  no为整数,缺省为1,指取符合条件的第几个单元(从1开始);
  pageno为页号,缺省为当前页。
  b)GETCELL(col,row,page)
  col,列号(从1开始);
  row,行号(从1开始);
  page,页号(从1开始)。
  c)ROW()
  如在公式表达式中返回公式单元的行号,否则返回当前单元行号(均从1开始)。
  d)IF(number,para1,para2)
  number数值或数值表达式;
  para1任意数据类型的参数;
  para2任意数据类型的参数;
  当number不为0时返回para1,否则返回para2。
  4.用同样方法,在E3单元格中输入公式D3*C3。
  5.最后,在装机单下面合计总额,在C24单元格输入公式SUM(C3:C23),如^27050201e^5所示。
#1  三、用同样的方法填好“装机单”页的其它单元格
  这样一个PC机报价方案就制作完成了。