3月24日(土)のセミナー(現在、キャンセル待ちを受付中) に参加される方々に事前アンケートをとっているのですが、そのときにお問い合わせをいただいたマクロを作ってみました。
▼このマクロでできること
貼り付けた文字列の最初の1文字を小文字にします。
貼り付けた文字列がアルファベットの時だけ効力を発揮します。
日本語の文字列を貼り付けても何も変化しません。
また、貼り付けた文字列の先頭がスペースやタブ記号である場合には、それらを無視して、その次に現れるアルファベットを小文字にします。
私は、[Alt] + [V] に割り当てて使っています。
▼用途例
![1](https://emoji.ameba.jp/img/user/re/red-emperor/40192.gif)
ある文章の主語を目的語にして書き直す場合など、わざわざ最初の1文字を小文字にするのが面倒です。
(コピーした文字列)
The Cherry Street Coffee House
(貼り付けた文字列)
the Cherry Street Coffee House
![2](https://emoji.ameba.jp/img/user/re/red-emperor/40193.gif)
オンライン辞書よっては、単語の先頭の1文字が大文字になっているので、Wordに貼り付けてから、最初の1文字を小文字に変更しなければなりません。
その手間も省けます。
▼マクロの説明
青色文字の記載によって、貼り付けた文字列の範囲の先頭にタブや改行、スペースなどが含まれている場合、それらを無視して小文字にするアルファベットを探す工夫がされています。
▼マクロ
Sub 貼り付け時に小文字()
Dim myRange As Range
Dim myKW As String
Dim SS As Long
myKW = Chr(9) & Chr(11) & Chr(12) & Chr(13) & Chr(14) & Chr(32)
Set myRange = Selection.Range
SS = myRange.Start
Selection.PasteAndFormat (wdPasteDefault)
myRange.SetRange SS, Selection.End
myRange.MoveStartWhile cset:=myKW
myRange.Characters.First.Case = wdLowerCase
Set myRange = Nothing
End Sub
▼関連記事
マクロコードの登録方法
ツールバーのボタン登録