おすすめパワポ本12選!プロから学ぶ資料作成術

PowerPoint VBA 複数の角丸の半径を数値で揃えるマクロ

PowerPoint VBAを使い、角丸四角形の角丸の半径を「mm」で調整するマクロをご紹介します。

複数の図形を選択して実行することで、角丸のサイズを揃えることができます。

スポンサーリンク
スポンサーリンク

角丸の半径をmmで調整するマクロ

コード

Sub 角丸サイズ調整()

    Dim radius As String
    Dim shp As Shape
                
    With ActiveWindow.Selection

        'シェイプが選択されている場合
        If .Type = ppSelectionShapes Then
        
            '角丸の半径を入力
            radius = InputBox("角丸の半径を入力してください。" & vbCrLf & _
            "(単位: mm)")
            
            '半径をptに変換
            radius = radius * 2.835
            
            '数値以外が入力された場合はマクロを終了
            If IsNumeric(radius) Then
                ElseIf radius = "" Then
                Exit Sub
            Else
                msg = "数値を入力してください。"
                MsgBox msg
                Exit Sub
            End If
        
            For Each shp In .ShapeRange
            
                With shp
                
                    'シェイプの辺の長さを比較
                    If .Width < .Height Then
                    
                        'シェイプを指定の半径にする
                        .Adjustments(1) = radius / .Width
                      
                    Else
                        'シェイプを指定の半径にする
                        .Adjustments(1) = radius / .Height
                        
                    End If
                End With
            Next shp
        Else
            'シェイプが選択されていない場合はマクロを終了
            MsgBox "シェイプを選択してください。"
            Exit Sub
        End If
    End With
End Sub
スポンサーリンク

実行方法

図形の「四角形:角を丸くする」「四角形:1つの角を切り取り1つの角を丸める」「四角形:1つの角を丸める」「四角形:上の2つの角を丸める」「四角形:対角を丸める」のいずれか、または複数を選択して実行します。

ダイアログボックスが開くので角丸の半径を入力します。例えば、「高さ:10cm」「幅:10cm」の角丸四角形は、角丸の半径を最大「50mm」まで設定することができます。

「OK」をクリックすると、すべての図形の角丸の半径が指定値で揃います。

角丸の半径を揃えることで、見た目が美しく仕上がります。