VBAと日々のこぼれ話

  1. VBA

【VBA】Excelシートのセルのサイズ、フォント、文字色等を設定

フォーマットを一括で揃えたい

手作業はやっぱりちょっと手間だから

同一Excelブック内であれば、特段の理由がなければ同じフォーマットで揃えておいた方が見栄えも使い勝手も良いと思います。
ですが、複数のシートを挿入して値を設定した後で1シートずつ揃えていくのは手間。
そんな時、一括で設定できれば楽だと思いませんか?

シートのフォーマット設定

フォーマットの設定は、以下としています。

なんちゃって方眼紙仕様(32ピクセル×32ピクセル)
フォント「MS Pゴシック」
フォントカラー「緑」
フォントサイズ「11」

フォーマット設定のサンプルコード

対象のシートに対して、セルを全選択した状態でフォーマットを設定しているというごくシンプルな作りです。
※シートに対してフォーマットを整えているため、挿入した図形のテキストボックス等は対象外ですよ。

複数シートにも対応可

サンプルコードは対象シートのみのシートを整えるようになっています。
ただ複数シートにも対応しやすいような作りにしています。「.Name = TargetSheetName」の部分の条件式を変えることで簡単に複数シートにも対応可能です。あまり考えずに増やしたシートのフォーマットを統一するとき等に便利です。

注意事項

wb(WorkBookを設定したオブジェクト)への設定によって、マクロを記載していない他のExcelブックに対しても実行できます。
ですが、注意事項が一つ。それは「対象のExcelが開いていること」です。この処理では、ファイルのオープン処理は入れていません。(対象Excelをマクロが記載されているExcelファイルに設定しているためファイルオープンは前提なので)

【スポンサーリンク】



小話:方眼紙仕様の理由

方眼紙仕様なのは、ちょっとした悪戯心です。

これは、インデント等を揃えやすいようにExcelのセルを敢えて方眼紙のように設定して設計書を書いた経験からです。日本でSEと呼ばれる職に就いている方なら「わかる」と言ってくれるかもしれませんね。
本来、Excelは表計算ソフトであってドキュメント作成ソフトじゃないなんて揶揄されますが、色々と便利なんです(笑)

VBAの最近記事

  1. 【VBA】CSVを1行ずつ処理したい

  2. Excelシートの最終行を取得したい その1

  3. 【VBA】未だに苦手としていること

  4. 【VBA】モジュール先頭に記述する4種類のOption キーワード ステートメント

  5. 【VBA】同じ階層体系のフォルダを量産したい

関連記事

【スポンサーリンク】




PAGE TOP