在Word InsertAfter中格式化项目符号

问题描述

我正在尝试在创建过程中格式化项目符号点,但是遇到了一些问题。我似乎无法“即时”更改字体样式。每个项目符号的格式都会更改,项目符号之间也会发生变化。

子弹1 子弹2 子弹3 子弹4 子弹5 项目符号6

我有一个用于存储项目符号文本及其格式的类。我只是不知道如何最好地应用格式。我在考虑是否可以选择最后插入的文本,然后可以应用格式设置,但似乎也无法弄清楚。

    Private Sub CreateBullets(ByVal reportInfo As Report@R_866_4045@ion)

    wrdBulletsRange = wrdDocument.Bookmarks("StartBullets").Range
    wrdBulletsRange.Select()
    wrdBulletsRange = wrdApplication.Selection.Range
    wrdBulletsRange.ListFormat.ApplyBulletDefault()

    For Each bullet In reportInfo.BulletPoints

        If bullet.FontStyle = "normal" Then

            Dim bulletItem As String = bullet.BulletText
            wrdBulletsRange.InsertAfter(bulletItem)

        ElseIf bullet.FontStyle = "Italics" Then

            Dim bulletItem As String = bullet.BulletText
            'wrdBulletsRange.Font.Italic = 1
            wrdBulletsRange.InsertAfter(bulletItem)
            'wrdBulletsRange.Font.Italic = 0

        ElseIf bullet.FontStyle = "Bold" Then

            Dim bulletItem As String = bullet.BulletText
            'wrdBulletsRange.Font.Bold = 1
            wrdBulletsRange.InsertAfter(bulletItem)
            'wrdBulletsRange.Font.Bold = 0

        ElseIf bullet.FontStyle = "Underline" Then

            Dim bulletItem As String = bullet.BulletText
            ' wrdBulletsRange.Font.Underline = 1
            wrdBulletsRange.InsertAfter(bulletItem)
            'wrdBulletsRange.Font.Underline = 0

        ElseIf bullet.FontStyle = "Italics Bold" Then

            Dim bulletItem As String = bullet.BulletText
            'wrdBulletsRange.Font.Italic = 1
            'wrdBulletsRange.Font.Bold = 1
            wrdBulletsRange.InsertAfter(bulletItem)
            'wrdBulletsRange.Font.Italic = 0
            'wrdBulletsRange.Font.Bold = 0

        ElseIf bullet.FontStyle = "Italics Underline" Then

            Dim bulletItem As String = bullet.BulletText
            'wrdBulletsRange.Font.Italic = 1
            'wrdBulletsRange.Font.Underline = 1
            wrdBulletsRange.InsertAfter(bulletItem)
            'wrdBulletsRange.Font.Italic = 0
            'wrdBulletsRange.Font.Underline = 0

        ElseIf bullet.FontStyle = "Bold Underline" Then

            Dim bulletItem As String = bullet.BulletText
            'wrdBulletsRange.Font.Bold = 1
            'wrdBulletsRange.Font.Underline = 1
            wrdBulletsRange.InsertAfter(bulletItem)
            'wrdBulletsRange.Font.Bold = 0
            'wrdBulletsRange.Font.Underline = 0

        End If

        If bullet IsNot reportInfo.BulletPoints.Last Then

            Dim newLine As String = Environment.NewLine
            wrdBulletsRange.InsertAfter(newLine)

        End If

    Next

    wrdBulletsRange.Font.Name = "Arial"
    wrdBulletsRange.Font.Size = 10

End Sub

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)