转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件使用 >> 办公软件 >> 正文
在Word中使用VBA宏自动生成试卷的作文格子         ★★★★

在Word中使用VBA宏自动生成试卷的作文格子

作者:闵涛 文章来源:闵涛的学习笔记 点击数:2176 更新时间:2009/6/9 2:12:37

  学生考试使用的语文试卷,都有作文格子,每个人都应该见过!

  如果您是教师,尤其是语文教师,倘若您被安排出语文试卷,总免不了遇到作文格子的制作!

  在WORD里面,作文格子完全可以使用表格来制作;

  但,那不是一件很轻松的事情,因为涉及到多行多列,并且,空行与单元格行之间的排版都相当讲究,单靠手工来完成,一不小心,容易造成表格排版不对称或不整洁等问题!

  本文介绍一种一劳永逸的方法,让您轻松实现试卷作文格子的制作,仅需几秒钟即可完成!

  一:打开WORD软件,按组合键Alt+F11打开Microsoft Visual Basic窗口,如下图


  在上图中,执行“插入”→“用户窗体”;

  这样就建立了一个用户窗体,然后在窗体中添加四个文本框,四个标签,一个按钮,如下图


  标签对应着文本框,标签文字按顺序分别是“行数”,“列数”,“行间距”和“首尾空行高度”;将文本框中的内容分别改为“25”,“20”,“0.5”和“0.4”;按钮文字改为“生成作文格子”;

  好了,窗体的控件建立好之后,直接双击按钮进入代码编辑模式,输入如下的代码:

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

  退出代码编辑模式或者干脆不退出,在窗口中找到对应的运行按钮或按F5直接运行以上代码,这个时候,少安毋躁,等待几秒钟,自动会在WORD窗口中生成作文格子!

  程序执行成功之后,切换到WORD窗口,即可看到效果了,如下图!


  上图的纸张为A4,阁下亦可自行修改加以应用!

  知识扩展:

  上面生成的是25行20列的表格,其实,在程序运行的过程中,可以修改行、列数及行间距等参数,以生成更符合您的需要的表格!

  上述的代码,可以进行保存,以备不时之需;

  在VB窗口中执行“文件”→“导出文件”;选择路径保存即可!如下图!


  以后若要使用,那么,执行“文件”→“导入文件”即可!

  以上代码参考网上资源总结而成,版权仍归原作者所有!


[办公软件]如何在office(PowerPoint,Word,Excel)中制作带圈的…  [办公软件]批量删除Office文档(word,excle,powerpoint)中的超…
[办公软件]Office(Word,Excel)密码破解软件(Office Password…  [办公软件]在powerpoint中快速插入word表格
[办公软件]快速将Word文档转换为PPT演示文档  [办公软件]Word、Excel和PowerPoint文件格式兼容包(简体中文…
[办公软件]在Office(word,excel)中输入各级钢筋符号的方法  [办公软件]Office文档(Word,PPT)的作者、备注、最后修改时间…
[办公软件]让EXCEL,WORD时间自动更新  [网络安全]激活型触发式AutoRun.inf病毒和rose病毒的清除方案
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · 办公软件  · 系统软件
    · 常用软件  · 聊天工具
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台