PowerPointについての「よくあるご質問」はこちらからご覧いただけます。
スポンサーリンク
スポンサーリンク

PowerPointでテキストボックスの余白をなくす方法

PowerPointで新規ファイルにテキストボックスを作成すると、余白が入る初期設定になっています。

余白が入っていると整列させた時に余白分のずれが生じたり、文字とプレースホルダーとの範囲の差が大きくなり、感覚的に囲み選択がしづらくなります。

余白、ダメ。ゼッタイ。

スポンサーリンク

テキストボックスの余白を確認する

新規ファイルにテキストボックスを作成します。

それでは、余白の値を確認してみましょう。

テキストボックスを選択し、「図形の書式設定」ウィンドウ →「文字のオプション」→「テキストボックス」の「余白」を確認すると、左右に「0.25cm」、上下に「0.13cm」の余白が入っています。

この初期値は何のため?

テキストボックスの余白をなくす

余白の値を全て「0cm」にします。

余白がなくなりスマートなテキストボックスになりました。

ないほうが作業しやすいよ。

余白の設定を保存する

テキストボックスにマウスオーバーさせて「右クリックメニュー」→「既定のテキストボックスに設定」を選択し、余白の設定を保存します。

余白の設定の他にフォント、フォントサイズ、文字色などが初期設定として保存されます。保存したファイルで新規テキストボックスを作成すると保存した値が引き継がれるので、何度も余白を「0cm」にする必要がありません。

別ファイルには引き継がれません。

スポンサーリンク

テキストボックスの余白を「0cm」にするマクロ

余白を「0cm」にするのは手動では時間がかかるので、マクロで行うと効率的です。

コード

Sub テキストボックスの余白を0にする()

    Dim nowTop As Single
    Dim nowLeft As Single
    Dim nowMarginTop As Single
    Dim nowMarginLeft As Single
      
    With ActiveWindow.Selection
  
    'テキストボックスが選択されていない場合はマクロ終了
    If .Type = ppSelectionNone _
    Or .Type = ppSelectionSlides Then
    
        MsgBox "テキストボックスを選択してください。"
        Exit Sub
      
    End If
    
    'テキスト編集モードの場合はシェイプを選択
    If .Type = ppSelectionText Then .ShapeRange.Select
    
    With .ShapeRange
    
        '現在の位置を代入
        nowTop = .Top
        nowLeft = .Left
        
        With .TextFrame
        
            '現在の余白を代入
            nowMarginTop = .MarginTop
            nowMarginLeft = .MarginLeft
        
            '余白を0にする
            .MarginLeft = 0
            .MarginRight = 0
            .MarginTop = 0
            .MarginBottom = 0
            
            'テキストに合わせて図形のサイズを調整する
            .AutoSize = ppAutoSizeShapeToFitText
            
        End With
    
        '元の位置に移動
        .Top = nowTop + nowMarginTop
        .Left = nowLeft + nowMarginLeft
            
    End With
  End With
End Sub

手動で余白を「0cm」にすると余白分だけテキストボックスが移動し、元の位置からずれてしまいます。その為、レイアウトを組んだ後では余白の変更がしづらくなります。

そこで、ずれ問題を解決する為にマクロの処理では、余白を「0cm」にした後、元の位置に移動させる設定にしています。