Twitterでたまたま下記のツイートを見つけたので、簡単な処理を考えてみました。
蛍光ペンでマークした部分の文字数をカウントするWordマクロで、動作確認はWord 2010で行いました。
これ、新田さんマクロに組み込んでくれないかな?(笑)…つか、これくらいなら自分で作れるかww http://bit.ly/PZlnNI 技術者から翻訳者へのシルクロード:MS-WORDファイル上に散在する蛍光ペン部の総文字数を数える方法(WORD2010)
https://twitter.com/terrysaito/status/243093715961405440 より
Option Explicit Public Sub Sample() Debug.Print "文字数 (スペースを含めない) : " & CountHighlightCharacters(ActiveDocument, wdStatisticCharacters) Debug.Print "文字数 (スペースを含める) : " & CountHighlightCharacters(ActiveDocument, wdStatisticCharactersWithSpaces) End Sub Private Function CountHighlightCharacters(ByVal Doc As Word.Document, ByVal Statistic As Word.WdStatistic) As Long '蛍光ペンでマークした部分の文字数をカウントする Dim r As Word.Range Dim n As Long n = 0 '初期化 Set r = Doc.Range(0, 0) With r.Find '※ 検索条件は必要に応じて変更 .ClearFormatting .ClearAllFuzzyOptions .Text = "" .Replacement.Text = "" .Format = True .Forward = True .Highlight = True .MatchAllWordForms = False .MatchByte = False .MatchCase = False .MatchFuzzy = False .MatchSoundsLike = False .MatchWholeWord = False .MatchWildcards = False .Wrap = wdFindStop Do While .Execute n = n + r.ComputeStatistics(Statistic) Loop End With CountHighlightCharacters = n End Function
DocumentオブジェクトとWdStatistic列挙型を引数にしているので、カウント対象の文書とカウント方法(文字数にスペースを含めるか否か)を指定することができます。
この記事へのコメントはありません。