如何取得上标和上标之间的内容
如何获得加粗字体和加粗字体之间的内容 并且有时候
如果上标或者黑体什么的在段尾
下面紧接着是表格
这时候通过vba获取的上标可能是不完整的
在段尾再打一下回车然后再删除这个回车就正常了

解决方案 »

  1.   

    Sub chk_shangbiao()
    Dim flag As Boolean
    Dim filename As String
    filename = ActiveDocument.Name
    Dim newdoc As Document
    Set newdoc = Documents.Add
    flag = True
    Documents(filename).Activate
    Selection.HomeKey Unit:=wdStory
    Do
        Dim mystr As Range
        Selection.Find.ClearFormatting
            
           With Selection.Find
            .Text = ""
            .Replacement.Text = ""
            .Forward = True
         '   .Wrap = wdFindContinue
            .Font.Superscript = True
            .Format = True
            .MatchCase = False
            .MatchWholeWord = False
            .MatchByte = True
            .MatchWildcards = False
            .MatchSoundsLike = False
            .MatchAllWordForms = False
           End With
           
            Selection.Find.Execute
            Set mystr = Selection.Range
            If Selection.Find.Found = True Then
               ' MsgBox mystr.Text
               If Left(mystr.Text, 1) = " " Or Right(mystr.Text, 1) = " " Then
                    MsgBox mystr.Text
                    newdoc.Content = newdoc.Content & mystr.Text & Chr(13) & Chr(10)
               End If
            Else
                flag = False
            End If
    Loop While flag
    newdoc.Activate
    newdoc.SaveAs ("d:\check_shangbiao.doc")
    End Sub这段代码主要是为了检查上标前后是否有被标记了上标的空格
    和两个上标之间是否有正常空格
      

  2.   

    在Word2003中开始记录宏,手动完成所需功能,结束记录宏,按Alt+F11键,查看刚才记录的宏对应的VBA代码。
      

  3.   

    在Word2003中开始记录宏,手动选中你要获取的内容,Ctrl+C,结束记录宏,按Alt+F11键,查看刚才记录的宏对应的VBA代码中将哪些内容放在剪贴板中了。
      

  4.   

    手动怎么判断两个上标之间是《不是上标的空格》
    用Range或Selection对象的Move方法移到下一个字符,获取当前字符的Font属性中的Superscript属性?