見出し画像

角丸四角を一発調整!PowerPointVBA

柔らかい雰囲気を醸し出す、角丸四角。雰囲気を出してくれるのは良いけど、問題を抱える子でもあります。それは、

サイズを変えると角のサイズも変わる

「神は細部に宿る!」という精神で、細かい所に力を注ぎこむ方もおられるでしょう。たくさん入れた角丸四角の角を調整して、夜を明かした日々を経験しているかと思います。え?いない?そう。それが嫌で角丸四角を使うのを避けている方も多いかと思います。私もそうでした。でもね、変態のわたしはVBAを勉強し始めて思ったんですよ。

角丸くん、調整できない?

できたんです。これでもう、目視でちまちまと角丸四角の角を揃える作業とはおさらば!

あ、こんにちは。パワポ師のホリです。副業として資料作成をしながら、パワポで遊んでる人です。Twitterでは日々、パワポ/資料作成/思考などについて発信してるので良ければフォローしてください。

https://twitter.com/YuU_Holy

角丸四角を調整するVBAを作るときに考えた事

画像1

画像2

マクロデータの使い方

VBAを含んだデータは有料ですが、この後にコードを貼り付けておきます。是非使いたい!けど、VBEを開いて…とかする自信がない!という方は、ホリにコーヒーを恵んでください。もちろん、自分でもできるよ!って方はどうぞ、コピーして使ってください!そしてご意見をください!シェアしてくだ

実際に私が組んだVBAを動かす手順は以下の通りです。

Excelとは違い、使い方に癖があります。必ず、VBAコードが書かれているファイルを開いて、実行するようにしてください。アドインにしたりやり方は他にもありますけどね。

画像3

画像4

画像5

画像6

画像7

画像8

実際に使ってみる

VBAコード公開

最初に言い訳をしておきますが、私のVBAレベルは「調べてそれなりにできる程度」です。難しい処理はできません。もし、こうしたほうが良いよ!とかアドバイスがあれば欲しいです。あ、もちろん、データは問題なく動くことを確認しています。

Sub 角丸調整()

 If Not ActiveWindow.Selection.Type = ppSelectionShapes Then Exit Sub
    
 'コーナー設定値の入力
 Dim corner As Double, Inp As Variant
     Inp = InputBox("0~10の数値を入力してください。")
     '角丸は短辺に対して00.5で設定
     'わかりやすく0~10までとし、20で割った値を使用
 If Inp = "" Then Exit Sub  ' キャンセル時に終了
 
 Dim Temp As Double
   Temp = Inp / 20

 Dim Shp As Shape
 Dim ShpShort As Double  '図形の短辺
 Dim MinShp As Double  '最小図形
 
 '最小図形の短辺サイズを判定しMinShpへ代入
 MinShp = 10000  '仮で大きな数値を代入
   
 For Each Shp In ActiveWindow.Selection.ShapeRange
   If Shp.AutoShapeType = msoShapeRoundedRectangle Then
     ShpShort = IIf(Shp.Width < Shp.Height, Shp.Width, Shp.Height)
     MinShp = IIf(MinShp < ShpShort, MinShp, ShpShort)
   End If
 Next
 
 '最小図形のコーナーサイズを決定
 corner = Temp * MinShp
 
 '全図形に最小図形のコーナー比率を設定
 For Each Shp In ActiveWindow.Selection.ShapeRange
   If Shp.AutoShapeType = msoShapeRoundedRectangle Then
           ShpShort = IIf(Shp.Width < Shp.Height, Shp.Width, Shp.Height)
           Shp.Adjustments.Item(1) = corner / ShpShort
   End If
 Next

 MsgBox ("完了しました")

End Sub

さいごに

いかがでしたでしょうか?これで角丸四角も手軽に気軽に使えるようになりましたね!パワポ、楽しんでいきましょう!

他にも、こんなことできないか?といったアイデアがあればご連絡ください!

マクロ有効データ

データの中には以下を含みます

VBAコード
本記事で使用している画像の元データ

有効活用してもらえると、嬉しいです!


ここから先は

88字 / 1ファイル

¥ 100

自信を持てず、結果も評価も得られない会社員 でしたが、 ・自分の「楽しい」を創り、伸ばせば ・結果も評価も、「気持ち」も大きく変化 同じ悩みを持つ方へ価値を見つける手助けがしたい サポート頂けるとありがたいです! が、フォロー・拡散という形でも非常に喜びます!