1 窗体
窗体是一种文档,可以用来收集信息。它包括两部分:
一部分是由窗体设计者输入的,可以插入希望得到回答的问题、选项列表、信息表格等。(可设置保护,不被修改,如下图,Word2007在开发工具选项卡,保护→保护文档)
另一部分是由窗体填写者输入的,窗体设计者可以在文档中插入窗体域或 ActiveX 控件,为窗体填写者提供用于收集数据的位置。
上述保护设置完成好,只有窗体域的内容允许修改,其他内容被保护起来。
另外,打印时可选择仅打印窗体域内容。
2 插入窗体
Word2007插入窗体:
然后将光标放在要插入文本窗体域的位置,然后在菜单栏上点击“开发工具”选项卡。 在选项卡下找到控件栏的“旧式工具”按钮。 点击该按钮后弹出窗体工具窗。 然后在工具窗中找到文本窗体域并点击。 然后插入文本窗体域了。 (在Word 2003依次点击“视图”—“工具栏”—“窗体”,这时出现“窗体”工具条,先点击一下该工具条最左边的“ab”按钮以便激活从左往右数的第4个按钮(窗体域选项),激活了该按钮后点击一下该按钮进行设置,最后点击“确定”即可。)“窗体”工具栏包含了10个功能按钮,由左至右的功能分别是: 插入文字型窗体域、复选框型窗体域、下拉型窗体域、窗体域选项、绘制表格、插入表格、插入图文框、窗体域底纹、重新设置窗体域以及保护窗体。
窗体域插入后,单元格中会显示出一个带有灰色阴影的小方块(说明: 此阴影在按下“窗体域底纹”按钮的情况下才会显示的)。需要注意的是,窗体域底纹只在屏幕上显示,用于提醒用户该域的具体位置,并不会被打印出来。
文字型窗体域插入之后,如果有特殊的要求,您还可以其属性进行设定。方法是,单击窗体工具栏上的“窗体域选项”按钮,或者鼠标双击插入的窗体域,即可进入“文字型窗体域选项”对话框。文字型窗体域包含了6种类型,分别为常规文字、数字、日期、当前日期、当前时间以及计算。其中,最常用的当属“常规文字”类型,其次是“数字”类型。对于“数字”类型的窗体域,用户可以在“数字格式”下拉菜单中定义其具体格式。另外,在此对话框中,“添加帮助文字”按钮的作用也非常重要,在设计表单时,您可以利用它对用户可能产生疑惑的单元格添加注释和说明。
如下面人文档就是添加了一些文字域后的效果:
3 VBA操作域
3.1 设置值:
Ac("text1").Result = "小样门诊部" Ac("text7").Result = "10" & Chr(11) & "50" '上述的text7是域的“书签”名。 '也可以使用下面的代码: Ac(1).Re = "小样门诊部"3.2 添加:
Ac(Range:=Selec, _ Type:=wdFieldUserName)3.3 删除
Ac(1).Delete3.4 计数
Ac.Count3.5 锁定:
Set theFields = Ac If = wdUndefined Then MsgBox "Some fields are locked"3.6 域代码
Ac(1).Code.Text3.7 取消阴影
Ac.Shaded = False '取消阴影3.8 域的链接类型
在word文档中可以插入各种域,域可以有相应的域类型,访问Type属性可以返回域的类型。
除了域类型,还可以通过Kind属性返回域的链接类型。
Word.A = False Dim oField As Field Dim oDoc As Document Dim oRng As Range Set oDoc = Word.ActiveDocument With oDoc For Each oField In .Fields With oField If .Kind = wdFieldKindNone Then .Delete End If End With Next End With Word.A = True3.9 域转换为不含域代码的静态文本
在Field对象中有一个方法是最重要的方法,这个方法是Unlink方法。如果word文档中有很多域,现在想要把所有的域都替换为以域结果显示的静态文本,也就是不再使用域,就可以使用Unlink方法将所有域转换为不含域代码的结果文本。
Word.A = False Dim oField As Field Dim oDoc As Document Dim oRng As Range Set oDoc = Word.ActiveDocument With oDoc For Each oField In .Fields With oField If .Type = wdFieldSequence Then .Unlink End If End With Next End With Word.A = True End Sub4 表单套打
当用户将填写好的表单发回后,剩下的工作就是打印这些表单了。直接打印当然是最简单的,但是如果要像前面提到的那样,首先批量印刷基本表单,然后逐个进行套打,则会在很大程度上降低成本,打印速度也会得到较大的提升。
表单套打的实现并不复杂。您只需在打印时,不使用Word工具栏上的“打印”按钮,而是选择“文件”*“打印”(或者按下“Ctrl+P”组合键),进入“打印”对话框。单击“打印”对话框中的“选项”按钮,在弹出对话框中选中“仅打印窗体域内容”复选项,点击“确定”按钮后即可实现表单套打。
另外,如果是专门为套打而设计表单,则可以在保存表单模板前,选择“工具”*“选项”,进入“打印”选项卡,选中“仅打印窗体域内容”复选项,点击“确定”按钮并保存该模板。这样一来,凡是使用该模板创建的表单,在默认的打印状态下,都会仅打印窗体域中的内容。
参考:
-End-