我正在VBA中編寫一個腳本,在CorelDraw中創建一個圖形。我無法集中文本。下面是CorelDraw中的宏編輯器正常工作代碼:通過VBA發送命令
Dim s2 As Object
Dim Txt As Object
Dim test As String
Dim returntest As String
returntest = "Test~Test1234~Test56~Test789"
test = Replace(returntest, "~", Chr(13))
Set s2 = CorelApp.ActiveLayer.CreateArtisticText(-7.75, (1 - 0.5)/2, test)
Set Txt = s2.Text
Txt.Story.Font = "Swis721 BT"
Txt.Story.Size = 20
Txt.Story.LineSpacing = 75
Txt.Story.Alignment = cdrCenterAlignment
s2.Fill.UniformColor.CMYKAssign 0, 0, 0, 100
s2.Outline.SetNoOutline
s2.CenterX = s1.CenterX
s2.CenterY = s1.CenterY
S1僅僅是一個已定義的矩形。問題在於「cdrCenterAlignment」。 VBA不會將其識別爲有效參數,因爲它引用的內容僅存在於CorelDraw中。如果我將它稱爲字符串,我會得到「cdrCenterAlignment變量未定義」或「類型不匹配」。 如何,甚至可能的話,我可以發送此命令/參數到CorelDraw,同時仍在Excel中工作?
我碰到類似的問題,發送相同的圖紙到AutoCAD,但能夠解決它通過發送到命令行的東西。
Corel庫鏈接到Excel VBA項目(通過工具 - >參考)? –
^^那。參考CorelDRAW庫和常量將被定義,並且您可以使用實際的CorelDRAW類型和API,並享受IntelliSense和自動完成,而不是針對「Object」接口工作,並經常參考文檔以瞭解哪些對象可用於哪些對象 - 每當你輸入一個錯字時處理運行時錯誤438,因爲後期綁定的代碼會很高興地編譯並且只能在運行時解決。 –
我沒有鏈接它們,因爲如果將文檔發送到其他計算機,我不知道該鏈接將如何傳輸。鏈接是否仍然存在?或者在將鏈接發送到其他計算機時必須重新鏈接? –