• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルVBAでワードアート)

エクセルVBAでワードアートのスタイルのサンプルを配置する方法

このQ&Aのポイント
  • Excel2016で既定のワードアートのスタイルのサンプルをシート上に配置する方法について説明します。
  • VBAを使用して、ワードアートを一括で配置する方法を解説します。
  • msoTextEffect23の部分を変数iに置き換えることで、連番のワードアートを作成することができます。

質問者が選んだベストアンサー

  • ベストアンサー
  • SI299792
  • ベストアンサー率47% (772/1616)
回答No.3

済みません。「サンプルをシート上に配置したい」を見落としていました。 こういう事ですね。 Option Explicit ' Sub test01()   Dim I As Integer   Dim Wa As Object '   For I = 1 To 40     Set Wa = ActiveSheet.Shapes.AddTextEffect(I - 1, _       "TEST/TEST", "メイリオ", 40, msoTrue, msoFalse, 10, 40 * I)     Wa.Name = "WA" & I   Next I End Sub 前の回答を消したい。

emaxemax
質問者

お礼

ありがとうございます。 おかげさまでやりたいことができました! 助かりました!!

その他の回答 (2)

  • SI299792
  • ベストアンサー率47% (772/1616)
回答No.2

済みません、ミスです。解ると思いますが、 Option Explicit は除いて下さい。 股は全ての変数を定義して下さい。

emaxemax
質問者

お礼

ありがとうございます。

  • SI299792
  • ベストアンサー率47% (772/1616)
回答No.1

無理ですね。msoTextEffect23全体を変数にするなら、 Option Explicit ' Sub test01()   Dim PresetTextEffect As Integer '   PresetTextEffect = msoTextEffect23 '   For i = 1 To 40     Set wa = ActiveSheet.Shapes.AddTextEffect(PresetTextEffect, _       "TEST/TEST", "メイリオ", 40, msoTrue, msoFalse, 10, 40 * i)       wa.Name = "WA" & i   Next i End Sub Integer で指定していることから解るように、msoTextEffect23は数字です。   PresetTextEffect = 22 でもいいです。 https://docs.microsoft.com/ja-jp/office/vba/api/office.msopresettexteffect を参考にして下さい。

emaxemax
質問者

お礼

msoTextEffect23は数字!ありがとうございます。勉強になりました。