(VBA)Word中对选中的行(代码行)自动编号并修改注释的颜色

说实话,CSDN的这个插入代码的控件很好用,特别是自动添加行号的功能。

下面这段VBA代码就是在Word中,对你编辑的代码添加行号和对“//”以后的注释部分加上颜色。

 

用法:选中你希望添加行号的所有行,运行此VBA,即可在每行首添加“#001 ”字样的行号。对你选中的行,从1开始自动编号。你也可以把这段代码设置成一个按键,每次只要选中希望编号的行,然后点一下按键运行一下即可。

 

有时间再把对word中嵌入的代码的格式设置也加进来就更完美了~~~


以下代码在office2007中调试通过:

Sub 程序代码加行号()
    Dim nLineNum           '行号(数值)
    Dim sLineNum As String '行号(文字)
    Dim selRge As Range
    Dim i
    
    '------------以下变量变量用于将注释改为蓝色------------
    Dim lineProgramRange As Range  '单行程序代码范围
    Dim commentRange As Range
    Dim TextLine As String
    Dim progComment As String
    Dim RgnStart As Long
    Dim RgnEnd As Long
    
    Set selRge = Selection.Range
    For nLineNum = 1 To selRge.Paragraphs.Count
        sLineNum = Str(nLineNum)
        sLineNum = LTrim(sLineNum)
        
        '生成行号格式"001"
        For i = 1 To (3 - Len(sLineNum))
            sLineNum = "0" + sLineNum
        Next i
        
        '行号前加"#"
        sLineNum = "#" & sLineNum
        sLineNum = sLineNum + " "
        
        '得到当前选中行 并设置颜色为蓝色
        Set lineProgramRange = selRge.Paragraphs(nLineNum).Range
        'Selection.Font.ColorIndex = wdBlue
        lineProgramRange.Font.ColorIndex = wdBlue
                
        selRge.Paragraphs(nLineNum).Range.InsertBefore (sLineNum)
        
        '------------以下变量用于修改注释为绿色------------
        Set lineProgramRange = selRge.Paragraphs(nLineNum).Range
        TextLine = lineProgramRange.Text
        charpos = InStr(1, TextLine, "//")   'C语言单行注释标志
         
        If charpos <> 0 Then  '存在注释的时候才需要处理
            progComment = Mid(TextLine, charpos)  '切割出注释文字
            RgnStart = lineProgramRange.Start
            RgnEnd = lineProgramRange.End
            lineProgramRange.SetRange Start:=RgnStart + charpos - 1, End:=RgnEnd  '感谢zhupanxin的修改
            
            lineProgramRange.Select
            Selection.Font.ColorIndex = wdGreen
            
        End If
            
        '------------以下用于修改关键字 颜色、字体------------
        
    
    Next nLineNum
    
End Sub




评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值