VB6からの操作でExcel上へワードアートで例えば”(仮)テスト”のみたいな
文字を表示したいのですが・・・上手くいきません。
「Excelを開く」「シートの指定」「セルへの書込み」は出来きるのですが
「ワードアート」の作成ができません。
知っている方がいらっしゃいましたらお教え下さい。
こんな感じでどうでしょう。
Set objShape = objSheet1.Shapes.AddTextEffect(msoTextEffect28, "(仮)テスト", "MS ゴシック", 24, msoFalse, msoFalse, 0, 0)
魔界の仮面弁士様早速の返信ありがとう御座います。
まず、結果から申しますと出来ませんせした。。。
また、自分なりにも意地ってみましたので見て頂けないでしょうか?
================================
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Dim objShape As Shape
Set xlApp = CreateObject("Excel.Application")
ブック名シート名指定
Set objShape = xlSheet.Shapes.AddTextEffec(xlApp.msoTextEffect28, "(仮)テスト", "MS ゴシック", 24, xlApp.msoFalse, xlApp.msoFalse, 0, 0)
================================
> Dim objShape As Shape
間違いではありませんが、型が曖昧になります。
『As Excel.Shape』の構文を使われることをお奨めします。
上記の記述ですと、参照設定の「優先順位」設定によって、
Dim objShape As Office.Shape 'Office Object Library
Dim objShape As Excel.Shape 'Excel Object Library
のいずれの意味であるのかが揺れてしまいますので。
> Set objShape = xlSheet.Shapes.AddTextEffec(xlApp.msoTextEffect28, "(仮)テスト", "MS ゴシック", 24, xlApp.msoFalse, xlApp.msoFalse, 0, 0)
(問題点1) AddTextEffec メソッドではなく、AddTextEffect メソッドです。
(問題点2) msoTextEffect28 は、Excel.Application オブジェクトの
プロパティではなく、Office ライブラリ内の定数(=27)です。
(Office.MsoPresetTextEffect 列挙型)
(問題点3) msoFalse は、Excel.Application オブジェクトの
プロパティではなく、Office ライブラリ内の定数(=0)です。
(Office.MsoTriState 列挙型)
'-----------------
Option Explicit
Private Sub Command1_Click()
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Dim objShape As Excel.Shape
Set xlApp = New Excel.Application
xlApp.Visible = True
Debug.Print xlApp.Version '12.0
Set xlBook = xlApp.Workbooks.Add()
Set xlSheet = xlBook.Worksheets(1)
Set objShape = xlSheet.Shapes.AddTextEffect(msoTextEffect28, "(仮)テスト", "MS ゴシック", 24, msoFalse, msoFalse, 0, 0)
End Sub
魔界の仮面弁士様またまた早速の返信ありがとう御座います。
また、返信(私の)が遅くなりました事お詫び申し上げます。
まず、結果から申しますと出来ました。
『As Excel.Shape』の構文追加及び
参照設定で「Office ライブラリ」を追加致しました所上手くいきました。
>(問題点2) msoTextEffect28 は、Excel.Application オブジェクト
↑↑↑ズバリでした・・・
また、書き込みすると思いますが・・・
その際は、また宜しくお願い致します。
魔界の仮面弁士様ありがとう御座いました。
ツイート | ![]() |