MicrosoftExcel2013下的VBA宏:生成程序修改单

注意:

1.这段宏是在MicrosoftOfficeStandard2013下撰写和调试的。用在其他Office版本中可能需要适当修改

2.保存带有宏的Excel表格,应该保存为*.xlsm格式(启用宏的工作簿)

关于本宏的用途

现在修改了一个程序的若干个模块,每个模块修改了若干个文件,现在要用一个EXCEL表格总结修改的文件信息。工作簿中每个模块(Sheet)都要有标题,修改单中每个文件都要有文件名、SVN上地址、修改说明本宏用于快速生成一个表格结构,这样在之后使用时只要傻瓜化地向表格中添加文字就可以了

宏运行后的效果图:

宏的用法:调用Init启动宏,想要多加一个Sheet,只需要在Init例程中添加一个AddPage例程,后面加上添加Sheet的名称,就可以了。

Dim SheetNum As Integer

‘初始化EXCEL表格
Sub Init()

    SheetNum = 0
    
    ‘创建四个表格
    AddPage "MonProxy"
    AddPage "MonProxyTool"
    AddPage "MonService"
    AddPage "MonClient"
    
End Sub

‘添加页面 输入:要创建的页面名
Sub AddPage(SheetName As String)

    ‘选中最后一个表格
    ‘规律:第一个表格叫Sheet1,改名后,新生成的表格会被默认命名为Sheet1
    ‘再改Sheet1名后,再新创建表格,依次会被默认命名为Sheet2、Sheet3...
    If SheetNum = 0 Then
        Sheets("Sheet1").Name = SheetName
    Else
        Sheets("Sheet" & SheetNum).Name = SheetName
    End If
    SheetNum = SheetNum + 1
    
    ‘选中改名后的表格
    Sheets(SheetName).Select
    
    ‘设定表格内容
    DecorateSheet SheetName
    
    ‘在本表格后创建新表格
    Sheets.Add After:=ActiveSheet

End Sub

‘设定表格内容
Sub DecorateSheet(SheetName As String)

    Range("A1").Select
    
    ‘设置列宽
    Columns("A:A").ColumnWidth = 24
    Columns("B:B").ColumnWidth = 45
    Columns("C:C").ColumnWidth = 75
    
    ‘设置行高
    Rows("1:1").RowHeight = 75
    
    ‘标题行配置
    ‘A1-C1为标题行
    Range("A1:C1").Select
    ‘标题行配置
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlCenter
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = True
    End With
    ‘标题行字体配置
    With Selection.Font
        .Name = "宋体"
        .Size = 36
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ThemeColor = xlThemeColorLight1
        .TintAndShade = 0
        .ThemeFont = xlThemeFontMinor
    End With
    Selection.Font.Bold = True
    ‘设定标题行文字
    ActiveCell.FormulaR1C1 = SheetName
    
    ‘时间行配置
    ‘A2-C2为时间行
    Range("A2:C2").Select
    ‘标题行配置
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlCenter
        .WrapText = False
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = True
    End With
    ‘标题行字体配置
    With Selection.Font
        .Name = "宋体"
        .Size = 11
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ThemeColor = xlThemeColorLight1
        .TintAndShade = 0
        .ThemeFont = xlThemeFontMinor
    End With
    ‘设定标题行文字
    ActiveCell.FormulaR1C1 = CDate(Format$(Now, "yyyy-mm-dd hh:MM"))

    ‘表格正文部分

    ‘表格标题列1:文件名
    Range("A3").Select
    ActiveCell.FormulaR1C1 = "文件名"
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorLight2
        .TintAndShade = 0.599993896298105
        .PatternTintAndShade = 0
    End With
    Range("A4:A33").Select
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorLight2
        .TintAndShade = 0.799981688894314
        .PatternTintAndShade = 0
    End With
    
    ‘表格标题列2:SVN上地址
    Range("B3").Select
    ActiveCell.FormulaR1C1 = "SVN上地址"
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorAccent1
        .TintAndShade = 0.599993896298105
        .PatternTintAndShade = 0
    End With
    Range("B4:B33").Select
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorAccent1
        .TintAndShade = 0.799981688894314
        .PatternTintAndShade = 0
    End With
    
    ‘表格标题列3:修改说明
    Range("C3").Select
    ActiveCell.FormulaR1C1 = "修改说明"
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorLight2
        .TintAndShade = 0.599993896298105
        .PatternTintAndShade = 0
    End With
    Range("C4:C33").Select
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorLight2
        .TintAndShade = 0.799981688894314
        .PatternTintAndShade = 0
    End With
    
    ‘设置整个单元格边框格式
    Range("A1:C33").Select
    Selection.Borders(xlDiagonalDown).LineStyle = xlNone
    Selection.Borders(xlDiagonalUp).LineStyle = xlNone
    With Selection.Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .ColorIndex = xlAutomatic
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeTop)
        .LineStyle = xlContinuous
        .ColorIndex = xlAutomatic
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .ColorIndex = xlAutomatic
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlEdgeRight)
        .LineStyle = xlContinuous
        .ColorIndex = xlAutomatic
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlInsideVertical)
        .LineStyle = xlContinuous
        .ColorIndex = xlAutomatic
        .TintAndShade = 0
        .Weight = xlThin
    End With
    With Selection.Borders(xlInsideHorizontal)
        .LineStyle = xlContinuous
        .ColorIndex = xlAutomatic
        .TintAndShade = 0
        .Weight = xlThin
    End With
    
    ‘左侧再加一列,为了美观(1.表格可以位于居中部分;2.表格左侧边框线会得以显示)
    Range("A4").Select
    Selection.EntireColumn.Insert , CopyOrigin:=xlFormatFromLeftOrAbove
    Columns("A:A").ColumnWidth = 2.63

End Sub

END

时间: 2024-11-07 23:15:16

MicrosoftExcel2013下的VBA宏:生成程序修改单的相关文章

MicrosoftWord2010下的VBA宏:生成标题提纲

编写本脚本的Office版本:Microsoft Office 2010 本段脚本,可以用来生成一个需求分析文档的提纲: 在上方的"视图→宏(最右边)→查看宏"中,创建一个宏,添加如下代码: '宏名称:DemandAnalysis '宏功能:生成需求分析模版 Sub DemandAnalysis()     '设置标题自动编号     SetNumber          WriteTitle "需求分析文档"          '文档适用范围     WriteH

MFC:“Debug Assertion Failed!” ——自动生成的单文档程序项目编译运行就有错误

今天照着孙鑫老师的VC++教程学习文件的操作,VS2010,单文档应用程序,项目文件命名为File,也就有了自动生成的CFileDoc.CFileView等类,一进去就编译运行(就是最初自动生成的项目),编译通过,可运行时直接弹出错误框,有点小懵,,,啥都没做就给我看这个: 图一   错误提示框 后来搜索一查,网上好多类似的错误以及解决方案,几乎都试了个遍,有: 方法(1)-重新生成解决方案,或者将项目文件目录下Debug文件夹删了,重新生成Release版: 方法(2)-可以先声明一个临时的C

使用 Zend_Form_Element 生成表单元素 --(手册)

表单由元素组成,它一般对应于 HTML 表单输入.Zend_Form_Element 封装了单个表单元素,并完成下列工作: 校验(提交的数据有效乎?) 抓取校验错误代码和消息 过滤(在校验和/或输出之前元素如何转义或规范化?) 解析(元素如何显示?) 元数据和属性(什么信息进一步修饰元素?) 基础类 Zend_Form_Element 对许多类有合理的缺省设置,但最好还是继承这个类来完成特殊意图的元素.另外,Zend Framework 带有许多标准的 XHTML 元素. 1.  插件加载器 Z

根据数据生成表单

<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>根据数据生成表单</title> <script> //定义一个数组承接里面的对象内容 //提取数组中的元素(这个元素是对象) //用元素对象type属性判断这个对象是什么类型的标签 //再有对象拿到属性值给标签附上属性 //老套路 window.onload = function()

系统中生成编号/单号问题的实现方案讨论

应用场景 场景:对于大多数电商系统或财务系统来说,系统中的单号一般都不是从1开始的自增数字,而是一串有一定意义的字符串序列. 而往往这样的单号是要全局唯一的,不可重复. 那么,每次新增订单记录时,这个单号就要按照指定的规则来生成. 常见的订单号规则是字母前缀+日期+时间+定长的数字,如DD201610201559060001(format:XXYYYYMMDDHHmmssNNNN),PZ16102015000012(format:XXYYMMDDHHNNNNNN) 常见方案... 实现这样的场景

开源驰骋工作流CCFlow的通过导入内部数据生成表单的示例

应用背景:ccform的表单设计是自上而下的设计,就是说现有表单后有数据表,就是说在设计表单时ccform就自动创建了字段,如果该表单的表有了该字段就不创建了.但是很多程序员习惯了先创建表,然后在创建表单,也就是说在设计表单时,系统已经有该表了,要以已经有的表结构做为该表单的模版导入,就需要用到此功能. 解释:从指定的数据源中,指定的表,导入字段信息. 用途:在新建表单以前,表单已经有一个原型,或者已经有一个表,要以原来的数据表结构为模版,创建表单.比如我们要做一个人员入职流程,在实施以前,人员

atitit.guice3&#160;绑定方式打总结生成非单例对象toInstance&#160;toProvider区别&#160;v2&#160;pb29

atitit.guice3 绑定方式打总结生成非单例对象toInstance toProvider区别 v2 pb29 1. 三 绑定方式的介绍1 2. To接口,链式绑定,用的最多的1 3. toConstructor1 4. toInstance生成的都是单例对象的...3 5. toProvider生成非单例对象3 5.2. 注解(Annotations)绑定3 5.3. 实例绑定(str,int绑定)4 5.4. 无目标绑定4 6. 参考5 重大的描述 1. 三 绑定方式的介绍 1. 在

在Ubuntu下配置运行Hadoop2.4.0单节点配置

还没有修改hosts,请先按前文修改. 还没安装java的,请按照前文配置. (1)增加用户并设立公钥: sudo addgroup hadoop sudo adduser --ingroup hadoop hduser su - hduser cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys ssh localhost exit   (2)把编译完的hadoop复制到/usr/local目录,并修改目录权限 cp –r /root

[转]Linux下用gcc/g++生成静态库和动态库(Z)

Linux下用gcc/g++生成静态库和动态库(Z) 2012-07-24 16:45:10|  分类: linux |  标签:链接库  linux  g++  gcc  |举报|字号 订阅 在 linux 下,库文件一般放在 /usr/lib 和 /lib 下, 静态库的名字一般为 libxxxx.a ,其中 xxxx 是该 lib 的名称 动态库的名字一般为 libxxxx.so.major.minor , xxxx 是该 lib 的名称, major 是主版本号, minor 是副版本号