エクセルで文書を作成している人は多いでしょう。
良く使う書式などはテンプレート化している場合もあるでしょう。
そんな人向けに、文書内の見出しを目立たせる先頭文字の装飾をVBAで簡単にコード化する方法を説明します。
こんにちは じゅんぱ店長 (@junpa33) です。
今回の簡単プログラムは、エクセルで作る文書の中で見出しとなる部分を
いつもより目立たせる一つのワザをエクセルVBAで作ってみます。
Webページで多く使われる見出しの見せ方を、エクセル文書でも簡単に使えるようにします。
コンテンツ
エクセル文書の見出し文の先頭文字を加工する
エクセルで社内資料や提出書類、書面テンプレートを作っている人は多いです。
そんな中、エクセルでも、
読みやすい見栄えのする文書作りには、強調文字の使用は欠かせません。
エクセルの場合は、セル単位で文字フォント設定を変更することは非常に簡単に行うことが出来ます。
けれども、
1文字単位の文字フォント設定になると、エクセルシート上のカーソルを細かく動かさないといけません。
一転して、結構面倒な作業になります。
エクセルVBAでセル入力文字を操作すれば、ササッと処理することが出来ます。
先頭文字を指定し取り出すコード
まず、1文字単位で加工するためには、まずはその加工する文字を指定しないといけません。
最初に加工する文字の「Fontオブジェクト」を取り出します。
Range("B5").Characters(1, 1).Font
このコードはセルB5に入力されている文(文字列)の最初の文字を指定しています。
取り出した文字を加工する
この記事が参考になります。
文字を大きくする
文字サイズを「11」から「33」に変更します。
Sub 先頭文字を大きく()
Range("B5").Characters(1, 1).Font.Size = 33
End Sub
コード実行前
コード実行後
斜体にする
先頭文字を太字斜体にします。
Sub 先頭文字を太字斜体にする()
Range("B5").Characters(1, 1).Font.FontStyle = "Bold Italic"
End Sub
コード実行後
文字色を変更する
先頭文字を赤色に変更する。
Sub 先頭文字を赤色にする()
Range("B5").Characters(1, 1).Font.ColorIndex = 3
End Sub
コード実行後
文字加工を1つのコードにまとめる
「大きくする」「太字斜体」「文字色変更」の3つの操作を1つにまとめて同時に実行できるようにします。
大きくする、太字斜体にする、文字色を変えるを一つのコードに
3つの実行コードを一つにまとめるのに、With End Withステートメントを利用します。
この記事が参考になります。
Sub 先頭文字を取り出し、太字斜体、赤色にする()
With Range("B5").Characters(1, 1).Font
.Size = 33
.FontStyle = "Bold Italic"
.ColorIndex = 3
End With
End Sub
これで3つのマクロを一つにまとめることができました。
見出しがどこにあっても使えるようにする
これまで説明して来たVBAコードでは、セルB5に対してだけしか実行されませんでした。
実際にはそれでは使えませんので、
その都度、適用したいセルを指定してコードの実行が出来るようにします。
「Range(“B5″)」を「Activecell」に変更します。
FontStyleの指定方法では、”Bold Italic” でも “太字 斜体” でもどちらでもOKです。
Sub セルを選択して実行()
With ActiveCell.Characters(1, 1).Font
.FontStyle = "太字 斜体"
.Size = 25
.ColorIndex = 3
End With
End Sub
選択されたセルに入力されている文(文字列)の先頭の文字が加工されます。
コード実行するときは、ショートカットキーで「Alt + F8」、表示されたウインドウからマクロ名を選択して「Enter」を押します。
コード実行前
コード実行後
先頭ではない文字を加工するには
先頭文字ではなく文中の途中の文字を目立たせたい場合もあるかもしれません。
その場合は、その時に強調したい文字を指定し取り出すことになります。
Charactersプロパティの指定を変更します。
今回は「セル」を強調してみます。
Sub 途中文字を強調する()
With ActiveCell.Characters(4, 2).Font
.FontStyle = "太字 斜体"
.Size = 25
.ColorIndex = 3
End With
End Sub
コード実行前
コード実行後
もっと操作の自由度を上げるには、見出し分の強調文字の指定をその都度変更できるようにすることで可能になります。
それをするためには、VBAプログラムとの対話型のコードを組み込む必要があります。
インプットボックスと変数の考え方が必要になってきます。
ここでは説明しきれないので、それはまた後のテーマにします。
エクセル文書の見出しの先頭文字を大きく まとめ
実際、ワードではなくエクセルで書類を作成する人は結構おられます。
エクセルで作る方が結構便利というケースもあります。
エクセルで文書を作成する場合でも、ボタンの1クリックでエクセルの機能を色々使えるようになっています。
そんな中で、
自分のオリジナルな文字加工なんかを独自マクロとしてボタン化してリボンに設置しておくというのもアリでしょう。
エクセルVBAの独習には動画学習という方法もあります。 目と耳両方を使って学習することでさらに勉強効率を上げることもできます。
エクセルVBAを独習するのに参考書は欠かせません。 参考書選びは自分に合った「相棒」にできるものを選んでいきたいです。
今回の記事はここまでです。 最後までご覧いただき有難うございました。