【问题标题】:Change insert line color with VBA macro使用 VBA 宏更改插入线颜色
【发布时间】:2015-07-24 03:08:47
【问题描述】:

下面的代码是在 Microsoft Word 97-2003 中创建的(不是由我创建的,并保存为 *.dotm),默认“插入形状/线条”为黑色。用作具有特定封面、页眉、大纲样式等的程序模板。当 *.doc 文件保存为 *.docx 并激活“SignoffLine”宏时,插入行的颜色为蓝色(MS Word 2010插入形状/线条的默认设置?)。

我可以更改每个文档的默认颜色,我可以通过Normal.dotm 更改它,但是我想编辑下面的宏,所以插入的行总是黑色的。

Sub SignoffLine()
    On Error GoTo endthis
    i = Selection.Information(wdVerticalPositionRelativeToPage)
    Set oFFline = ActiveDocument.Shapes.AddLine(554, i + 12, 524, i + 12).Line

    With oFFline.Line
        .Weight = 0.75
    End With
        oFFline.Name = "hline" & idi
        idi = idi + 1
    endthis:
End Sub

【问题讨论】:

    标签: vba ms-word word-2010


    【解决方案1】:

    这很简单...您需要将oFFline 对象定义为Shape,然后将其属性设置如下:

    Sub SignoffLine()
        Dim oFFline As Shape
        Dim i As Integer
    
        On Error GoTo endthis
    
        i = Selection.Information(wdVerticalPositionRelativeToPage)
        Set oFFline = ActiveDocument.Shapes.AddLine(554, i + 12, 524, i + 12)
    
        With oFFline.Line
            .Weight = 0.75
            'set black color 
            .ForeColor.RGB = RGB(0, 0, 0)
        End With
        oFFline.Name = "hline" & idi
        idi = idi + 1
    
        endthis:
        Set oFFline = Nothing
    End Sub
    

    更多信息,请参阅:Shape Object (Word)RGB

    【讨论】:

    • 是的,这行得通,谢谢!我曾在同一位置尝试过这行代码:.ForeColor.RGB = RGB(0, 0, 0) 但子中没有 Dim。搜索原代码,找到了形状、文字等,在开头调用
    猜你喜欢
    • 2016-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-21
    • 2011-07-07
    相关资源
    最近更新 更多