Home » エクセルマクロ・Excel VBAの使い方 » 図形内文字列 » VBAで図形内文字列を中央に配置する-TextFrame.HorizontalAlignment・VerticalAlignment

VBAで図形内文字列を中央に配置する-TextFrame.HorizontalAlignment・VerticalAlignment

対象:Excel2007, Excel2010, Excel2013

「excel 2010 vba shapes テキストボックス "文字配置"」
「エクセルvba 図形 テキスト 中央」
といった検索キーワードで、このサイト『インストラクターのネタ帳』へアクセスがありました。

Excelで図形(Shape)内に存在する文字列・テキストの配置(位置)を指定する方法、中央に配置するVBAのコードを探している方による検索でしょうか。
ここでは参考になりそうなマクロを2つ紹介しておきます。

アクティブシート上の図形内の文字列を中央に配置するサンプルマクロ

以下のようなマクロで、アクティブなシート上の、図形内の文字列を中央に配置できます。

Sub アクティブシート上の図形内テキストを中央揃えに()
 Dim shp As Shape
 For Each shp In ActiveSheet.Shapes
  With shp.TextFrame
   .HorizontalAlignment = xlHAlignCenter
   .VerticalAlignment = xlVAlignCenter
  End With
 Next
End Sub

アクティブシート上の、全Shapeに対してループを回して、
 For Each shp In ActiveSheet.Shapes

各図形のTextFrameオブジェクトの、
  With shp.TextFrame

水平方向の配置を中央に、
   .HorizontalAlignment = xlHAlignCenter

垂直方向の配置を中央に指定しています。
   .VerticalAlignment = xlVAlignCenter

アクティブブック上の図形内の文字列を中央に配置するサンプルマクロ

以下のようなマクロで、アクティブなブックの、全ワークシートの、図形内の文字列を中央に配置することができます。

Sub アクティブブック上の図形内テキストを中央揃えに()
 Dim ws As Worksheet
 Dim shp As Shape

 For Each ws In ActiveWorkbook.Worksheets
  For Each shp In ws.Shapes
   With shp.TextFrame
    .HorizontalAlignment = xlHAlignCenter
    .VerticalAlignment = xlVAlignCenter
   End With
  Next shp
 Next ws
End Sub

アクティブなブックの、全ワークシートにループを回して、
 For Each ws In ActiveWorkbook.Worksheets

各シートで、全Shapeに対してループを回して、
  For Each shp In ws.Shapes

TextFrameオブジェクトの、水平方向・垂直方向を中央に設定しています。
   With shp.TextFrame
    .HorizontalAlignment = xlHAlignCenter
    .VerticalAlignment = xlVAlignCenter

最終更新日時:2024-03-20 12:34

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » 図形内文字列 » VBAで図形内文字列を中央に配置する-TextFrame.HorizontalAlignment・VerticalAlignment

「図形内文字列」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.