我想使用vb.net检查word文件,并检查文档中的样式是否正确。
我必须在word文档中检查这些表达式
a.Verdana + 16 pt + Bold + Red
b.Verdana + 12 pt + Bold + Italic + Blue
c.Verdana + 11 pt + Bold + Italic + Brown
d.Arial + 10 pt + Black
我试过了,
If objDoc.Range.Font.Name = "Arial" And objDoc.Range.Font.Size = 10 Then
If objDoc.Range.Font.Color = WdColor.wdColorBlack Then
End If
MsgBox("ok")
Else
MsgBox("not ok")
End If
但是使用此代码时,只有当整个word文档由Arial,10,Black
组成时才会显示msgbox“OK”,并且当它包含上述表达式时显示msgbox“Not Ok”,除了Arial,10,Black
所以基本上我需要帮助找出同一个word文档中包含所有上述表达式/样式的所有表达式。
任何帮助都会非常明显...... Plz帮助我,仍然无法找到解决方案..
答案 0 :(得分:4)
使用以下代码,您可以找到字体样式不同的句子。
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Dim oDoc As New Word.Document()
Dim wapp As New Word.Application()
Try
oDoc = wapp.Documents.Open(TextBox1.Text & "\" & "TEST.doc")
For Each Senetence As Word.Range In oDoc.Sentences
For Each Character As Word.Range In Senetence.Characters
If Character.Font.Name <> "Verdana" AndAlso Character.Font.Name <> "Arial" Then
MsgBox(" Font Name not matching Error Line number " & Senetence.Text)
Exit For
End If
Next
Next
oDoc.Close()
Catch ex As Exception
oDoc.Close()
End Try
End Sub