「【読み物】Wordをアウトライナーとして使う!」に、Wordをアウトライナーとして利用していることを以前書きました。私はこのアウトラーナーをタスクリストに利用しています。
使い方については未だに試行錯誤をしているところです。「ExcelのタスクリストよりはWordのタスクリストのほうが使いやすそうだ」ということに気がついただけで、それ以上のことはまだしていません(笑)。使いやすそうというよりは、単にWordが好きなだけかもしれません。
で、タスクリストの重要度を視覚的に示すために蛍光ペンで着色をしています。この目的のためのマクロを紹介します。
このマクロでできること
カーソルのある段落全体に蛍光ペンの黄色を着色します。
以下の例では、Wordのアウトラインモードの表示になっています。
(実行前)
(実行後)
なお、私はこのマクロをショートカットキーの Ctrl + 4 に設定しています。
このショートカットキーは、OneNoteの「ノートにノート シールを適用する」ためのショートカットキーと同じです。他のアプリケーションの使い慣れたショートカットキーと機能が同じであれば同じキーを使うのがいいですよね。
マクロの解説
マクロの実行の前後でカーソルの位置が変わらないように、Selectionオブジェクトではなく、Rangeオブジェクトで処理をしています。
9行目から13行目の処理により、すでに蛍光ペンの黄色が着色されている場合には蛍光ペンを解除できるようにしました。
この挙動も、OneNoteの段落を着色する機能と同じです。
マクロ
Sub 段落を着色_黄色() Dim myRange As Range Set myRange = Selection.Range With myRange .Expand wdParagraph If .HighlightColorIndex = wdYellow Then .HighlightColorIndex = wdNoHighlight Else .HighlightColorIndex = wdYellow End If End With Set myRange = Nothing End Sub