2016-11-09 49 views
0

Access VBAを使用してCatiaパーツプロパティを操作しようとしています。私は、CATスクリプト言語とVBAの間にいくつかの非互換性があることを知っています。私は、次の組み込み関数の回避策やその他のオプションがあるかどうか疑問に思っています。私は両方の機能に以下のコードを「メソッドまたはデータメンバーが見つかりません。」を得る瞬間 CATScriptから変換したVBAを使用したCatiaパーツプロパティの追加

.CreateString 
.SetEnumerateValues 

Dim oDoc As Document 
Dim oPart As Part 
Dim params As Parameters 
Dim strParam As StrParam 
Dim arrVendorList(1) 

Set oDoc = CATIA.ActiveDocument 
Set oPart = oDoc.Part 
Set params = oPart.Parameters 
Set strParam = params.CreateString("VENDOR", "") 

arrVendorList(0) = "abc" 
arrVendorList(1) = "def" 
strParam.SetEnumerateValues arrVendorList 

答えて

1

ポータビリティに関するスクリプト文書では、私は簡単な回避策が国連で発見しました-typeメソッドが適用される変数。以下のコードはアクセス可能です。新しいパーツが追加され、プロパティにカスタムベンダーのドロップダウンリストが作成されます。

Dim oDoc  '**As Document 
Dim i As Integer 
Dim param  '**As Paramaters 
Dim StrParam '**As StrParam 
Dim arrVendorList(2) As Variant 

Set oDoc = CATIA.Documents 
Set AddPart = oDoc.Add("Part") ' create new part 
Set newPart = AddPart.GetItem("Part1") ' set new part 
Set param = newPart.UserRefProperties 
Set StrParam = param.CreateString("VENDOR", "") ' create new custom property 

' add vender array list to part 
arrVendorList(0) = "" ' initial value 
arrVendorList(1) = "abc" 
arrVendorList(2) = "def" 
StrParam.SetEnumerateValues arrVendorList 
関連する問題