簡體   English   中英

更改 Solidworks 零件上的文本

[英]Changing text on a solidworks part

我正在嘗試使用宏更改我在solidworks 零件中的一些文本。 我認為我最好的選擇是將文本設置為等於自定義屬性,然后使用 vba 更改該屬性的值。

我似乎得到的最接近的是這個

Dim swApp As Object

Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long

Sub main()

Set swApp = Application.SldWorks

Set Part = swApp.ActiveDoc
Part.FileSummaryInfo
End Sub

這只是從錄制的宏中獲取的。 據我所知,它只是選擇文件屬性,沒有改變任何東西。

任何人都知道我將如何使這項工作? 或者如果有不同的方法來實現同樣的事情?

謝謝

嘗試使用 CustomPropertyManager object。 在 API 幫助中有一個類似於您所追求的示例: https://help.solidworks.com/2020/english/api/sldworksapi/Get_Custom_Properties_for_Configuration_Example_VB.htm

您沒有說您使用的是哪個版本的軟件,但 API 在許多軟件版本中應該足夠相似。

我還建議使用強類型代替“對象”。 即將“Dim swApp As Object”更改為“Dim swApp As SldWorks.SldWorks”等。這允許 VBA 編輯器建議方法/屬性。

此代碼用於更新自定義屬性。 正如評論中提到的,它的限制是鏈接到自定義屬性的文本在打開之前不會更新。 我不知道將打開文本的代碼。

    Dim swApp As SldWorks.SldWorks

    Dim swModel As SldWorks.ModelDoc2

Dim swCustPropMgr As SldWorks.CustomPropertyManager

Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long
Dim Code As String

 Sub setcode()

Code = "test2"

End Sub

Sub main()

setcode

Set swApp = Application.SldWorks

Set swModel = swApp.ActiveDoc

Set swCustPropMgr = swModel.Extension.CustomPropertyManager("")

swCustPropMgr.Add3 "Texttesting", swCustomInfoText, Code, swCustomPropertyReplaceValue


End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM