« カタカナに蛍光ペンで色をつけるマクロ | トップページ | キーワードを蛍光色にするマクロ(使い方紹介) »

2009年7月11日 (土)

キーワードを蛍光色にするマクロ

またかよ?というテーマですが、今までのものとはかなり違います。

まず、「ボタンが美しい!」ことと、「読者さんとの共同制作」という点が新しいです。

また、新しいコードも覚えましたので、是非ご覧ください。

「highlight.dot」をダウンロード

●作用

テキストファイルに書いたキーワードを現在の文書中から探して、蛍光色にします。

蛍光色として選べるのは、文字に重ねても文字が読みやすいと思われる黄色や明るい緑などを中心に6色を使えるようにしました。

よって、キーワードの種類別に着色することができます。

また、キーワードの蛍光色を削除する機能もあります。

以前紹介した翻訳文の比較表自動作成マクロとあわせて使うと、その効果が発揮されます。

どんな使い方があるのか、いろいろとお試しください。

次回以降、とっておきの使い方を紹介しますので、それもお楽しみに。

●使い方

1.テンプレートを登録します。こちらをご参照ください。

2.Highlight

このような7つのボタンがツールバーに表示されます。

左から6つが、それぞれのボタンの色に対応した蛍光色を着色するマクロで、一番右が蛍光色を削除するマクロです。

3.キーワードを記載したテキストファイルを用意します。

以下のファイルを適当なフォルダに保存してください。

参考ファイル:「sample_keyword1.txt」をダウンロード

「sample_keyword2.txt」をダウンロード

ここにあげたキーワードは英語ですが、日本語でもかまいませんし、日本語と英語が混在してもかまいません。

あまり意味のあるキーワードを載せていません。単なる例示と思ってください。

4.キーワード検索対象となるワード文書を用意します。

参考ファイル:アップル社の7,536,565特許「sample_patent_us7536565.doc」をダウンロード

これも、最近の特許から選んだだけで、あんまり意味があるものではありません。単なる例示と思ってください。

5.着色する色のボタンをクリックします。

上記の「キーワード検索対象となるワード文書」を開いてください。

7つのボタンともに同じ操作で使えます。好きな色のボタンをクリックしてください。

Highlight2 ボタンをクリックするとファイルを選択する窓(左図参照)が開きます。

この窓を開いた状態では、テキストファイルだけが表示されるようにしました。

上記ステップ3にてテキストファイルを保存したフォルダを選び、どちらか一つのファイルを開きます(ファイルを選択してダブルクリックまたは、開くボタンをクリック)。

6.着色されます。

●工夫

①キーワードをテキストファイルに書きました。

今回は、複数のキーワードリストを使い分けることができます。

今までは、マクロのテンプレートにキーワードを書く手法を使っていましたが、これだと複数のキーワードリストを使い分けるのが難しいと感じておりました。

②ファイル選択が簡単!

プログラムの20,40~70行に記載されています。

キーワードのファイルを通常のファイルを開く窓から直感的にできます。

③ボタンの色が美しい!

自作するのをやめました。

「簡単プログラミングExcel VBA 応用編の付録のFaceIDリストから気に入ったボタンを探し出して使いました。

美しいですねぇ。仕事中についついクリックしてしまいます。

④テキストファイルの読み込み機能を使いました。

初めて使いました。スピードが速い感じがします。

プログラムの90,130,140,260行に関連のコードが書かれています。

ワードのVBの編集画面のヘルプファイルを見ると少し意味がわかると思います。

実際の作用としては、テキストファイルのファイル名を選んだ後、「シーケンシャル入力モード」でファイルを開いて、ファイルの先頭からファイルの末尾(EOF)までの文字列を一つずつ取得していることになります。

●プログラム(共通部分)

myHLCの文字列に、着色する色を代入して、以下の共通のプログラムを実行しています。

Sub 所定文字列を蛍光色にする(myHLC As String)

      Dim FileName
      Dim keyWord As String
      Dim actDoc As Document
      Dim myColorIndex As Long
      Dim myRange As Range
      Dim mydlgOpen As Dialog

      '対象文書の設定
10    Set actDoc = ActiveDocument

      'ダイアログボックスの設定
20    Set mydlgOpen = Dialogs(wdDialogFileOpen)

      'Rangeオブジェクトの設定
30    Set myRange = Selection.Range

      'キーワードファイル(テキストファイルに限定)を指定する
40    mydlgOpen.Name = "*.txt"

50    If mydlgOpen.Display = -1 Then
60        FileName = mydlgOpen.Name
70    End If

80    If Len(FileName) <> 0 Then

          'テキストファイルをシーケンシャル入力モードで開く
90        Open FileName For Input As #1
         
          '対象文書を選択
100       actDoc.Activate
         
          '蛍光ペンの現在の設定を仮保存
110       myColorIndex = Options.DefaultHighlightColorIndex
         
          '指定した蛍光色に変更
120       Options.DefaultHighlightColorIndex = myHLC
         
          'テキストファイル内で、最終行まで繰り返す処理
130       Do While Not EOF(1)
         
140           Line Input #1, keyWord
               
150           With myRange.Find
160             .Forward = True
170             .Wrap = wdFindContinue
180             .MatchWholeWord = True
190             .MatchByte = True
200             .Format = True
210             .Replacement.Highlight = True
220             .Execute findText:=keyWord, _
                 ReplaceWith:=keyWord, Replace:=wdReplaceAll
230           End With
               
240       Loop
         
          '蛍光ペンの設定を元に戻す
250       Options.DefaultHighlightColorIndex = myColorIndex
         
260       Close #1
       
270   End If

280   Set actDoc = Nothing
290   Set mydlgOpen = Nothing
300   Set myRange = Nothing
       
End Sub

●補足

このマクロは、このブログの読者さんと共同でアイディアをぶつけながら作りました。

いただいた提案が面白かったので、自分なりに解釈したり、使える技術を探したりしながらの作業。

おかげさまで、仕事の新しい方法を知って効率化ができましたし、マクロのコードもたくさん覚えました。

ありがとうございました。

|

« カタカナに蛍光ペンで色をつけるマクロ | トップページ | キーワードを蛍光色にするマクロ(使い方紹介) »

マクロテンプレート」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/519619/45596942

この記事へのトラックバック一覧です: キーワードを蛍光色にするマクロ:

« カタカナに蛍光ペンで色をつけるマクロ | トップページ | キーワードを蛍光色にするマクロ(使い方紹介) »