Excel VBA:ワードアートを作成し挿入する|AddTextEffectメソッドの使い方

フォント・サイズ・位置などを指定しワードアートをシートに表示するVBAを掲載しています。



Homeに戻る > Excel プログラムのTipsへ

Excel VBAでワードアートを作成するには、AddTextEffectメソッドを使います。
引数を設定することでフォント・サイズ・位置などが指定できます。
ここではワードアート ギャラリーの25番目のエフェクトで太字・斜体を指定し作成します。
その後、ShapeRangeオブジェクトで、塗りつぶし色・透明度・グラデーションを設定します。
最後にコマンドバーを消去しています。
関連する「ワードアートの行間を変更するには:Excel入門」も掲載していますので、参考にしてください。





AddTextEffectメソッドの構文

AddTextEffect(PresetTextEffect, Text, FontName, FontSize, FontBold, FontItalic, Left, Top)


■AddTextEffectメソッドの引数

・PresetTextEffect : 既定のワードアートの スタイルを指定します。

使用できる定数(ワードアート ギャラリー ダイアログ ボックスに表示される形式に対応しています)
msoTextEffect1
msoTextEffect2
msoTextEffect3
msoTextEffect4
msoTextEffect5
msoTextEffect6
msoTextEffect7
msoTextEffect8
msoTextEffect9
msoTextEffect10
msoTextEffect11
msoTextEffect12
msoTextEffect13
msoTextEffect14
msoTextEffect15
msoTextEffect16
msoTextEffect17
msoTextEffect18
msoTextEffect19
msoTextEffect20
msoTextEffect21
msoTextEffect22
msoTextEffect23
msoTextEffect24
msoTextEffect25
msoTextEffect26
msoTextEffect27
msoTextEffect28
msoTextEffect29
msoTextEffect30
msoTextEffectMixed


Text : 作成するテキストを指定します。


FontName : フォント名を指定します。


FontSize : フォント サイズをポイント単位で指定します。


FontBold : フォントを太字にするかどうかを設定します。

使用できる定数
msoCTrue
msoFalse
msoTriStateMixed
msoTriStateToggle
msoTrue


FontItalic : フォントを斜体にするかどうかを設定します。

使用できる定数
msoCTrue
msoFalse
msoTriStateMixed
msoTriStateToggle
msoTrue


Left : 表示する左端の位置をポイント単位で指定します。


Top :  表示する上端の位置をポイント単位で指定します。

作成したワードアートのフォント色やグラデーションは、ShapeRange.Fill を使い設定しています。


実行したExcelシート画面

■ワードアートを作成し挿入したシート

「ワードアートの挿入」ボタンをクリックすると、クリックイベントに記述したVBAが実行されます。

ワードアート作成画面


クリックイベントの実行VBAコード

引数を色々と変更しお試しください。

Option Explicit

'ワードアートの作成
Private Sub CommandButton1_Click()
    Shapes.AddTextEffect msoTextEffect25, "ワードアート", "HG創英角ポップ体", 42, msoTrue, msoTrue, 50, 80
    
    Shapes(2).Select
    Selection.ShapeRange.Fill.Solid
    '塗りつぶし色
    Selection.ShapeRange.Fill.ForeColor.SchemeColor = 3
    '透明度
    Selection.ShapeRange.Fill.Transparency = 0
    'グラデーション
    Selection.ShapeRange.Fill.OneColorGradient msoGradientFromCenter, 1, 0.2
    'ワードアートのコマンドバーを消去
    Application.CommandBars("WordArt").Visible = False
    
    Range("a1").Select
    
End Sub



Homeに戻る > Excel プログラムのTipsへ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved