【ワイルドカード】余分な改行を削除する

原稿ファイルの処理において、時々、余分な改行を削除したいことがあります。そんなときは以下のワイルドカードを使用します。

まず、「検索する文字列」に以下の文字列を入れます。
改行(^13)が2つ以上連続({2,})するものを検索します。

^13{2,}

そして、「置換後の文字列」に以下の文字列を入れます。
上記でヒットした改行(の固まり)を、1つの改行(^p)へ置き換えてやります。

^p

もし、ソフトリターン(^11)も同時に削除対象にしたい場合は、「検索する文字列」を以下のように記述するといいです。

[^11^13]{2,}

ちなみに、PDFファイルからコピペしたり変換した場合、ソフトリターンや改行、時に半角スペースや全角スペースが混在していることがあります。その場合は、「【ワイルドカード】改行前の余分なスペースを除去する」を事前に実行してから、上記のワイルドカードを実行すれば良いです。

また、この記述方法を変化させれば、例えば、1行間隔に空白1行を差し込むと言うこともできます。
その方法は、「【ワイルドカード】強制的に1行間隔にする」に書いてありますので、参考にしてください。

広告

【ワードマクロ】カーソルのある段落に蛍光ペンを付ける

私が仕事で使っているワードマクロをご紹介。
「マクロの記録」を使って作ったお行儀のよくないスクリプトですのでご容赦を。

このマクロは、カーソルのある段落を自動で範囲指定して蛍光ペンをつけるだけのマクロです。また、実行するたびに色が変わり、10色変化します。11回目に蛍光ペンなしに戻ります。(蛍光ペン色で字が潰れるのが嫌なので、10色に限定するようなことをやっています(笑))

Sub HighLight2Paragraph()
Dim ColorLoop As Integer
On Error Resume Next
Selection.MoveUp unit:=wdParagraph, Count:=1
Selection.MoveDown unit:=wdParagraph, Count:=1, Extend:=wdExtend
Selection.MoveLeft unit:=wdCharacter, Count:=1, Extend:=wdExtend

ColorLoop = Selection.Range.HighlightColorIndex - 1
If ColorLoop < 0 Then ColorLoop = 7
If ColorLoop = 2 Then ColorLoop = 14
If ColorLoop = 9 Then ColorLoop = 0
Selection.Range.HighlightColorIndex = ColorLoop
End Sub

私はショートカットキーへ登録して、翻訳チェックをしている時に目印付けの代わりに使っています。

嫌だ、行単位にしてくれ!という方は、以下のスクリプトを使ってくださいませ。

Sub HighLight2Line()
Dim ColorLoop As Integer
On Error Resume Next
Selection.HomeKey unit:=wdLine
Selection.EndKey unit:=wdLine, Extend:=wdExtend

ColorLoop = Selection.Range.HighlightColorIndex - 1
If ColorLoop < 0 Then ColorLoop = 7
If ColorLoop = 2 Then ColorLoop = 14
If ColorLoop = 9 Then ColorLoop = 0
Selection.Range.HighlightColorIndex = ColorLoop
End Sub

[AHK] ワードのスタートアップフォルダーを開く

以前、バッチファイルによるワードのスタートアップフォルダーを開く方法を記事にいたしましたが、今回は AutoHotKey で実現するスクリプトを紹介します。実務的にはバッチファイルがあれば十分事足りるのですが、ちょっと遊びのつもりでAHKへ持ち込んでみました。

ワードのアドインマクロ(例えば WildLightなど)を登録する際にお使いいただけます。


#NoEnv
EnvGet, WordStartUpPath, APPDATA
IfNotExist, %WordStartUpPath%
{
msgbox, 環境変数 APPDATA が無いか、フォルダーが存在しません。
ExitApp, 1
}
WordStartUpPath = %WordStartUpPath%\Microsoft\Word\StartUp
IfNotExist, %WordStartUpPath%
{
msgbox, ワードのスタートアップフォルダーがありません
ExitApp, 2
}
Run %WordStartUpPath%
return


このスクリプトは「OpenWordStartUpFolder.ahk」として公開していますので、ダウンロードしてお使いください。


Word の起動・終了が遅くなったら試してみること

Microsoft Word を使っているうち、立ち上げや終了に凄く時間が掛かるようになる場合があります。Google検索すると標準テンプレートである normal.dotm が肥大化することにより、起動・終了が遅くなるようで、「normal.dotm を削除せよ」という指示になっています。 (以下は Windows版 Microsoft Word のケースです)

Normal.dotm ってどこにあるの?

コマンドプロンプトを立ち上げ、以下の文字列を入力してください。

explorer %APPDATA%¥Microsoft¥templates

すると、エクスプローラーが立ち上りますが、そこに Normal.dotm がある筈です。(Windows 7, 8) ※WildLightシェアフォルダーにある OpenTemplatesFolder.EXE を使うと簡単に開けます。 Normal.dotm を削除すると、登録してあるショートカットキーなども消えてしまうことになります。そこで、私は以下のような運用をしています。

  1. まず、ワードを終了し、今ある Normal.dotm を削除します。
  2. 次にワードを立ち上げて、必要なショートカット等を登録し、終了します。
  3. 新しい Normal.dotm が作成されているので、それをバックアップとして別名で保存します。
  4. ワードの起動/終了が遅くなり始めたら、また normal.dotm を削除し、3で保存しておいたバックアップを normal.dotm へリネームします。

まず、必要なショートカット等の登録が全てされた保管すべき(容量が最小の) normal.dotm を準備(1,2)し、それを復元用のバックアップとして保存しておき(3)、起動・終了が遅くなったら normal.dotm へ書き戻して元のパフォーマンスに戻す(4)という運用です。 この作業を簡素化するために、以下のユーティリティソフトを作って利用していますので、よろしければご活用ください。 DeleteNormalDotm.exe BackupNormalDotm.exe RecoverNormalDotm.exe 

【使い方】(上記運用を例にします)

  1. まず、ワードを終了し、DeleteNormalDotm.exe を実行し Normal.dotm を削除します。
  2. 次にワードを立ち上げて、必要なショートカット等を登録し、終了します。
  3. BackupNormalDotm.exe を実行して、 Normal.dotm のバックアップを作成します。
  4. ワードの起動/終了が遅くなり始めたら、RecoverNormalDotm.exe を実行し、バックアップから normal.dotm を復元します。

何か新しいショートカットキー登録など、標準テンプレートへ手を加える必要が生じた場合は、RecoverNormalDotm.exe で Normal.dotm を復元した後に、それらの登録作業を行い、最後に BackupNormalDotm.exe でバックアップを取れば良いです。