インデックスカラーではなく、衣装RGBである3種類の色付き箇条書きからなるテキストですべての箇条書きを数えたいと考えています( 51,204,204 )。そして、各色の数を表示したいとします(例えば 42が青色) これは思い付きましたが、コンパイルされず、 "無効な修飾子"が ".Font"を指しています。VBA(MSWord):特定のrgb色で箇条書き点を見つけることはできません
Sub GetNumberOfBullets()
Dim objRange As Range
Dim objParagraph As Paragraph
Dim nNumber As Integer
' Initialization
Set objRange = Selection.Range
nNumber = 0
cyannum = 0
purplenum = 0
greennum = 0
For Each objParagraph In objRange.Paragraphs
If objParagraph.Range.ListFormat.ListType = WdListType.wdListBullet Then
nNumber = nNumber + 1
If objParagraph.Range`.Font`.Color.RGB = RGB(51, 204, 204) Then
cyannum = cyannum + 1
End If
If objParagraph.Range`.Font`.Color.RGB = RGB(204, 153, 255) Then
purplenum = purplenum + 1
End If
If objParagraph.Range`.Font`.Color.RGB = RGB(0, 176, 80) Then
greennum = greennum + 1
End If
End If
Next objParagraph
' Pop up a message box to show the total number of bullets.
MsgBox ("Bullet number:" & nNumber & "Cyan number:" & cyannum & "Purple number:" & purplenum & "Green number:" & greennum)
End Sub
これは迷路です!私のアドバイスはそこに行かない。基本的には、箇条書きのフォントは、テキストのフォントとは別に指定されます。無数のオブジェクトがありますが、それらのうちのいくつかは、あなたが期待している方法ではアクセスできないものです。あなたが主張するなら、私が見つけた最高のヘルプはhttp://www.shaunakelly.com/word/bullets/controlbullets20072010.html – Variatus