Office関連

蛍光ペンでマークした部分の文字数をカウントするWordマクロ

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列挙型を引数にしているので、カウント対象の文書とカウント方法(文字数にスペースを含めるか否か)を指定することができます。

Windows 8にClassic Shellをインストールしてみました。前のページ

Wordマクロで文字数を取得する方法をまとめてみました。次のページ

関連記事

  1. Office関連

    プログラムのソースコードを別の言語に変換するVBAマクロ

    SharpDevelopが公開している、ソースコードを変換するAPI「…

  2. Office関連

    ページ番号を取得するWordマクロ

    Wordマクロで選択位置のページ番号を取得する場合、簡単なのはSele…

  3. Office アドイン

    PowerPoint用のOffice用アプリ

    当ブログでも散々紹介しているOffice用アプリ(apps for O…

  4. Office関連

    Adobe Reader XIを利用してPDFファイルのページ数を取得するVBAマクロ

    先日Adobe Readerを利用してPDFファイルのページ数を取得す…

  5. Office関連

    Word 2013のアクセス キー一覧[PDF]

    前回の記事でWord 2013のアクセス キーをまとめたものを公開しま…

  6. Excel

    Office文書をパスワード付きPDFに変換するVBAマクロ

    4年ほど前に書いた、下記記事のマクロがWordでも使えるか?との質問を…

コメント

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

Translate

Chinese (Simplified)Chinese (Traditional)EnglishFrenchGermanJapaneseKoreanRussianSpanish

最近の記事

アーカイブ

PAGE TOP