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 365アイコン(imageMso)一覧(X,Y,Z)

    Office 365のデスクトップ版Officeアプリケーション(Wo…

  2. アイコン一覧

    Office 2013 アイコン一覧(B)

    ・Office 2013 アイコン一覧 NUM…

  3. アイコン一覧

    Office 365アイコン(imageMso)一覧(K,L)

    Office 365のデスクトップ版Officeアプリケーション(Wo…

  4. Office関連

    Office 2013の開発者用リファレンス

    「Word2013 VBA の日本語ヘルプ」でも回答していますが、Of…

  5. Office関連

    埋め込んだブックへのユーザー入力を活用する

    「Excel Web Appのブック埋め込みを試してみました。」でEx…

  6. Office関連

    ExcelとPowerPointに自動保存機能が追加されました。

    Excel 2016を使っていて、ふと気が付いたのが画面左上にある「自…

コメント

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

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP