VBA入門
第32回.セルの書式(配置,Alignment)

ExcelマクロVBAの基本と応用、エクセルVBAの初級・初心者向け解説
最終更新日:2019-07-08

第32回.セルの書式(配置,Alignment)


セル内での値を表示する位置(縦位置、横位置)をマクロVBAで指定できます。
「セルの書式設定」→「配置」で指定する内容です。


マクロVBAでの配置の指定

Range.プロパティ = 設定値
指定できるプロパティの設定値は以下になります。

プロパティ プロパティの説明 設定値 設定値の説明
HorizontalAlignment 横位置 xlCenter 中央
xlDistributed 均等割り付け
xlJustify 両端揃え
xlLeft
xlRight
VerticalAlignment 縦位置 xlBottom
xlCenter 中央
xlDistributed 均等割り付け
xlJustify 両端揃え
xlTop
WrapText 折り返し True する
False しない
Orientation 文字の向き -90 ~ 90 角度 (°)
xlDownward 下向き
xlHorizontal 水平方向
xlUpward 上向き
xlVertical 文字列は下向きでセルの中央に配置されます。
AddIndent 自動的にインデント True する
False しない
IndentLevel インデントのレベル 0 ~ 15
ShrinkToFit 自動的に縮小 True する
False しない
ReadingOrder 読む順序 xlRTL 右から左
xlLTR 左から右
xlContext 最初の文字に依存
MergeCells セルの結合 True する
False しない


文字列を均等に配置するには、
Orientation プロパティが xlVertical のときには VerticalAlignment プロパティを xlVAlignDistributed に設定し、
Orientation プロパティが xlHorizontal のときは HorizontalAlignment プロパティを xlHAlignDistributed に設定します。

これら全てを記憶することは困難ですし、あまり意味が無い事です。
これらを簡単に調べる為にこそ、マクロの記録があるのです。
マクロの記録で作成されたマクロから、必要な部分をコピペで使用すれば良いでしょう。
ただし、その為にはプロパティの(英単語としての)意味くらいは理解しておき、
必要な部分だけをコピペできるようにしておく必要があります。

マクロVBAでの配置の使用例

セルを結合して中央揃え


Range("セル範囲").HorizontalAlignment = xlCenter
Range("セル範囲").VerticalAlignment = xlCenter
Range("セル範囲").MergeCells = True


MergeCellsはRangeのプロパティですが、
セルの結合に関しては、メソッドもあります。
Range("セル範囲").MergeCells = True
これは、
Range("セル範囲").Merge
これでも結合できます。


先にも書きましたが、ここでの設定を記憶する必要はありません。
必要ととなった時に、調べられるようにしておけば十分です。




同じテーマ「マクロVBA入門」の記事

第29回.セル・行・列の削除・挿入(Delete,Insert)
第30回.総合練習問題3
第31回.セルの書式(表示形式,NumberFormatLocal)
第32回.セルの書式(配置,Alignment)
第33回.セルの書式(フォント,Font)
第34回.セルの書式(塗りつぶし,Interior)
第35回.セルの書式(罫線,Border)
第36回.総合練習問題4
第37回.ブック・シートの指定
第39回.セルのクリア(Clear,ClearContents)
第40回.セルのコピー・カット&ペースト(Copy,Cut,Paste)


新着記事NEW ・・・新着記事一覧を見る

VBAで写真の撮影日時や音楽動画の長さを取得する|VBA技術解説(1月10日)
ツイッターで出されたVBAのお題をやってみた|エクセル雑感(1月13日)
イベントプロシージャーの共通化(Enter,Exit)|ユーザーフォーム入門(1月13日)
Rangeオブジェクトの論理演算(差集合と排他的論理和)|VBA技術解説(1月10日)
イベントプロシージャーの共通化|ユーザーフォーム入門(1月7日)
コントロールの動的作成|ユーザーフォーム入門(1月6日)
Evaluateメソッド(文字列の数式を実行します)|VBA技術解説(1月5日)
エクスポート(PDF/XPS)|VBA入門(1月2日)
分析関数(OVER句,WINDOW句)|SQL入門(12月25日)
取得行数を限定するLIMIT句|SQL入門(12月21日)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
4.マクロって何?VBAって何?|VBA入門
5.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
6.変数宣言のDimとデータ型|VBA入門
7.繰り返し処理(For Next)|VBA入門
8.セルに文字を入れるとは(Range,Value)|VBA入門
9.空白セルを正しく判定する方法(IsEmpty,IsError,HasFormula)|VBA技術解説
10.徹底解説(VLOOKUP,MATCH,INDEX,OFFSET)|エクセル関数超技




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。



このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ