Word中利用VBA编程制作考试用作文稿纸

   语文考试中,经常用到作文稿纸,Word中带有稿纸模板,但有诸多限制(如纸型、行列数等相对固定),在试卷排版时颇为不便。经过尝试,笔者找到一种利用Word的VBA编程,通过绘制表格实现考试用作文稿纸的方法。

  一、编制程序

  1.启动Word,连续点击“工具”,“宏”,“录制新宏...”,在弹出的对话框中填写宏名(此例为“作文稿纸”),选择宏要保存的位置(可以保存在模板中,也可以保存在当前文档中),如图1所示。


  2.为了方便操作,可以将此宏以按钮的形式指定在工具栏中。单击“录制宏”对话框中的“工具栏”按钮,在弹出的“自定义”对话框的右侧,选中宏命令“Normal.NewMacros.作文稿纸”,用鼠标将其拖动复制到“常用”工具栏,在其上单击右键,选择相应的命令修改名称,为其编辑一个小图标,结果如图2所示。


  3.单击“录制宏”对话框中的“关闭”按钮,屏幕上将出现一个“录制宏”工具栏,单击停止按钮停止录制。

  4.依次选择“工具”、“宏”、“宏…”,在对话框中选择宏名“作文稿纸”,单击“编辑”按钮,打开vba编程窗口。录入如下代码:

  Sub 作文稿纸()

  UserForm1.CommandButton1.Enabled = True

  UserForm1.Show

  End Sub

  5.插入一个窗体UserForm1,在其中插入4个标签,4个文本框,一个按钮。分别设置它们的相关属性,其中,“所需行数”文本框的“text”属性值设为25,“所需列数”文本框的“text”属性值设为20,“行间距”文本框的“text”属性值设为0.5,“首尾空行高度”文本框的“text”属性值设为0.4,如图3所示


  6.双击命令按钮CommandButton1,录入以下代码:

  Private Sub CommandButton1_Click()

  Dim n As Integer  '定义一个变量为整数型

  n = 1

  ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=Val(TextBox1.Text) * 2 + 1, NumColumns _

  :=Val(TextBox2.Text), DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:=wdAutoFitFixed

  Selection.EndKey Unit:=wdRow, Extend:=True

  Selection.Cells.Borders(wdBorderVertical).LineStyle = wdLineStyleNone

  Selection.Tables(1).Rows.HeightRule = wdRowHeightExactly

  '设定表格行高为固定值

  Selection.Tables(1).Rows.Height = CentimetersToPoints(Val(TextBox3.Text))

  '设置表格行高为设置值,作为行间距

  Selection.Tables(1).Rows(1).Height = CentimetersToPoints(Val(TextBox4.Text))

  '设置第一行行高为设置值

  Do While n < Val(TextBox1.Text) + 1

  Selection.EndKey Unit:=wdLine

  Selection.MoveRight Unit:=wdCharacter, Count:=2

  '将插入点移至下一行

  Selection.Tables(1).Rows(2 * n).Height = Selection.Tables(1).Columns(1).PreferredWidth

  '设行高等于列宽

  Selection.EndKey Unit:=wdRow, Extend:=True

  Selection.EndKey Unit:=wdLine

  Selection.MoveRight Unit:=wdCharacter, Count:=2

  '将插入点移至下一行

  Selection.EndKey Unit:=wdRow, Extend:=True

  Selection.Cells.Borders(wdBorderVertical).LineStyle = wdLineStyleNone

  '去除此行的内部框线,只余边框

  n = n + 1

  Loop

  Selection.Tables(1).Rows(Val(TextBox1.Text) * 2 + 1).Height = CentimetersToPoints(Val(TextBox4.Text))

  '设置末行高为设置值

  Selection.EndKey Unit:=wdRow, Extend:=True

  Selection.Cells.Borders(wdBorderVertical).LineStyle = wdLineStyleNone

  Selection.Tables(1).Rows.Alignment = wdAlignRowCenter

  '表格居中

  With Selection.Tables(1)

  .Borders(wdBorderLeft).LineWidth = wdLineWidth150pt

  .Borders(wdBorderRight).LineWidth = wdLineWidth150pt

  .Borders(wdBorderTop).LineWidth = wdLineWidth150pt

  .Borders(wdBorderBottom).LineWidth = wdLineWidth150pt

  '设定表格边框为粗线

  End With

  Selection.EndKey Unit:=wdLine

  Unload Me

  End Sub

  二、使用

  与Word的稿纸向导或稿纸加载项相比,此程序做出的稿纸显然不适于在文档中直接使用,但在制作作文试卷时优势明显。其一,不受纸型限制;其二,因为是表格,所以能根据需要自由地添加、删除行列,还能在适当位置标注作文所要求的字数。

  应用前,应先设定好试卷模板,然后进行试验,以找出试卷最适的格子大小和行列数,需要制作稿纸时,可直接在“常用”工具栏上单击“作文稿纸”按钮,也可以连续点击“工具”,“宏”,“宏…”,打开“宏”对话框,在左侧组合框中选择名为“作文稿纸”的宏,然后单击“运行”,即可启动宏程序,在随后出现的“作文稿纸设置”窗口中,根据需要修改默认设置,最后,单击“确定”按钮,程序将自动绘制作文稿纸表格,如果稿纸超出一页(或一栏),选择稿纸中部的行删除即可。下面图4是在A3纸左右两栏中分别制作的20×16、20×10稿纸。


  三、导出导入

  在VBA编程窗口中,分别选择工程资源管理器中的UserForm1窗体和NewMacros模块,导出UserForm1.frm、UserForm1.frx和NewMacros.bas文件。如图5。


  需要在其他电脑中使用这个程序时,把备份拷贝过来,启动VBA编程窗口,通过“文件”、“导入文件”将UserForm1.frm、和NewMacros.bas导入,在Word中就使用了。

时间: 2024-11-02 04:53:42

Word中利用VBA编程制作考试用作文稿纸的相关文章

Word2013中利用控件制作下拉选择按钮

  案例阐述了如何通过控件在Word中制作下拉选择按钮.例如,在性别列中制作"男"和"女"下拉选择,方便输入.下面,小编以最新版的Word2013为例,来介绍一下下拉选择按钮的制作. ①启动Word2013,首先绘制出一个3行4列的表格,输入一些文字信息,我们要在性别右侧的单元格内设置一个可供选择的下拉按钮,将光标移动到此单元格,点击菜单栏--开发工具,选择控件功能组里面的"下拉内容列表控件". ②此时性别右侧的单元格就插入了我们刚添加的&quo

Word中利用字体制作各种实用标志

在Word文档的编辑中,有时需要做一些标志符,例如停车场标志.禁止吸烟标志等,怎么办?利用某些字体来制作既快又方便. 1.启动WORD,设置好页面属性.单击菜单"插入→符号",在"字体"下拉框中选择"Webdings",在中间的符号区就可发现"禁止吸烟"的标志,选定该符号,单击"插入",最后按"关闭"按钮. 2.在文档中选定插入的"禁止吸烟"标志,调整其大小颜色等,将

Word中利用字体制作各种实用标志的方法

在Word文档的编辑中,有时需要做一些标志符,例如停车场标志.禁止吸烟标志等,怎么办?利用某些字体来制作既快又方便. 1.启动WORD,设置好页面属性.单击菜单"插入→符号",在"字体"下拉框中选择"Webdings",在中间的符号区就可发现"禁止吸烟"的标志,选定该符号,单击"插入",最后按"关闭"按钮. 2.在文档中选定插入的"禁止吸烟"标志,调整其大小颜色等,将

WORD如何利用“绘制表格”制作报名表复杂表格

  首先,在桌面点击右键--新建--Microsoft Office Word文档,新建一个word文档. 新建完成后,双击打开,如图所示.这里,我们制作一张报名表. 点击"插入"选项卡,然后点击"表格"下方的下拉箭头,新建一个1*1的表格,如图. word提供了两种简单实用的工具"绘制表格""擦除",这两个工具可以在 "表格工具选项卡--设计"中找到.(将鼠标放在表格里才管用哦) 选择"绘制表格

在Word中利用样式添加目录

在Word的"格式"菜单项中,有个叫"样式与格式"的菜单项,"样式"选项,可以让我们在不同文章中设定相同的格式,使不同时候所编辑的文件 具有相同的风格.在此,我们先明确一下什么是样式.样式其实就是对文本某部分的格式的定义.在"格式"菜单中的"样式项"里,我们可以发现WORD其实已 提供了多种样式,如 "标题1.标题2.正文"等.而且我们也可以在设定满足我们要求的格式后,通过样式管理器,将

在Word中利用域设置试卷的页码

时间过得真快,又要期中考试了,各科教师免不了用Word编辑试卷然后再把它打印出来.在考试时为了防止学生在做题时漏掉题目,一般都要在每一页试卷的底端设置成"第x页,共x页"的样式.如果把"第x页,共x页"直接输入在页面底端,当试卷的页数发生变化时,必须进行手工修改.手工修改不仅麻烦,而且容易出错,如果用"域"设置试卷页码就可以轻松解决. 试卷的页面一般分为两栏,每栏为试卷的一页,并且在试卷的下方印刷页码和总页数.把光标插入到第一页(其实就是第一页的

Word中利用字体把文字转换为特殊图案

  单位里要制作禁烟宣传条幅,那个"禁止吸烟"标志,可以用字母来转换实现: 输入一个英文小写字母"z"(注意:一定要是小写的哟),将其字体设置为Webdings,即出现一个禁烟标志符号. 注意:如果输入其它字母则可以得到其它特殊符号;如果输入的是同一个字母,但设置的不同字体(如Webdings3),则同样可以得到不同的符号(请大家自行对照).

phtoshop中利用图层样式制作漂亮的彩色霓虹字

. 最终效果   1.新建页面,尺寸随意(不要太小),背景填黑色. 2.打上字,如果用下面素材的就用魔棒工具把文字选取出来,按CTRL+J复制到新层,然后把背景填充黑色.     3.双击字体层,出面图层样式窗口,先给它做渐变样式.   六色数值如下:#9ecaf0.#a5f99e.#f5b3f1.#f8ae97.#faf18e.#9df7fa.     添加光泽:     等高线自定义如下图:     内发光:   内阴影:     内阴影等高线设置如下图:     斜面与浮雕,给字体添加点光

WPS文字中如何利用公式编辑器制作图形标注

一般在制作标注时,我们往往会用文本框加文字来实现,但是文本框的边框样式及内部边距都需要设置,操作起来非常繁琐.不仅如此,而且占据的空间也非常大,往往几个文本框叠加在一起,不易分辨.其实我们可以使用WPS公式编辑器设置图形标注. WPS文字中利用公式编辑器制作标注 ①首先画图,将图形设为文字"环绕"型; ②启动公式编辑器,输入标注文字; ③退出编辑器,如图 ④WPS认为此公式文字为"图片",并且默认为"嵌入"型,只需将它改成"环绕&quo