もめんの格闘日記

主にPowerPointを中心としたPCのTips的なものを書いています。

【PowerPointマクロ】フォント操作(フォント、サイズ、色、中央揃え等)

今回はシェイプ内に含まれるフォントの操作について書きたいと思います。

主にShapeRangeオブジェクトのTextFrameとTextEffectのプロパティについてですねー。

フォントサイズなど、どちらのプロパティでも出来るものもあるので、並記しています。

厳密な使い分けはよく知りませんが、僕は文が短くなる方で書いています。

※以下のコードの頭にはActiveWindow.Selection.ShapeRange等の~.ShapeRangeが付いているつもりで記載しています。

(PowerPoint2010で動作確認しています)

 

テキストの変更

 .TextFrame.TextRange.Text = "サンプルText"

 .TextEffect.Text = "サンプルText"

文章が" "の中の内容になります

元々のテキストに足す場合は次のようにすると簡単に追加できます。

 .TextEffect.Text = "追加Text" & .TextEffect.Text

 

フォントサイズの変更

 .TextFrame.TextRange.Font.Size = 16

 .TextEffect.FontSize = 20

 

フォントの変更(英数)

 .TextFrame.TextRange.Font.Name = "Arial"

 " "がフォントの名前

 

フォントの変更(日本語と全角英数)

 .TextFrame.TextRange.Font.NameFarEast = "MS Pゴシック"

フォントの名前は全角や大文字等を正確に入れないと変更されません

 

フォントの色を変える

 .TextFrame.TextRange.Font.Color = RGB(0, 0, 0)

この例ではフォントは黒になります。白はRGB(255,255,255)

 

フォントを太字にする

 .TextEffect.FontBold = msoTrue

普通の太さにもどす際はmsoFalseにします

 

フォントを斜体にする

 .TextEffect.FontItalic = msoTrue

 

フォントの位置を中央揃えにする

 .TextEffect.Alignment = msoTextEffectAlignmentCentered

右揃え:msoTextEffectAlignmentRight

左揃え:msoTextEffectAlignmentLeft

 

 

これでフォント操作の代表的なものは一通り書いたと思います。

個人的には.Font.NameFarEastの存在を知らなくて、日本語変わらねぇ!

とか思ってめっちゃ探した記憶があります。

ネットでコード例挙げてる人は知ってるから当然のように.Font.NameFarEastと.Font.Nameが列挙されてますが、気が付きませんでした。

 

 

今回は以上です。

ありがとうございました。