2016-09-06 44 views
1

CATIAについては初心者ですが、VBAでかなりの経験があります。私はcatiaアセンブリのすべての部分を通過するExcelマクロを開発しようとしています。テキストをスプライシングして名前を変更し、並べ替えます(英数字の昇順)。私は実際のスプライシング、名前の変更、並べ替えビットのアルゴリズムを書くことができると信じています。私が苦労しているのは、実際にCatiaをExcelを使って操作していることです。インターネット上には多くの情報はありません。 CATIAで始まる参照セクションのすべてのボックスにチェックを入れました。私はこれまでのところ、これを書いた:Excel vetaでCatia v5モデルのプロパティを変更する

Dim CATIA as object 
Set CATIA = Getobject(,"CATIA.Application") 
Dim oMyDoc as Document 
Dim oCurrentProd as Product 'I assume the individual parts within CATIA are_ 
           referenced as products? 
Set oMyDoc = CATIA.ActiveDocument 

私がしようとするだけで上記のコードを実行した場合、私は「クラスがオートメーションをサポートしていません」というエラーを取得します。つまり、私の基本は間違っています。これと他の情報を参考にして私の仕事を完了させる助けに感謝します。ありがとう。

+0

に変更することができますので、あなたが最初にそれらが適切に入力された宣言することをお勧めします'と' Dim oCurrentProd 'をProduct'として –

答えて

0

VBAでCATIAからコードを実行すると、一部のオブジェクトが正しく型付けされたときにエラーが発生します。型やバリアントとしてそれらのオブジェクトを宣言してみてください。

Dim CATIA as 'object 
Set CATIA = Getobject(,"CATIA.Application") 
Dim oMyDoc as 'Document 
Dim oCurrentProd as 'Product 
Set oMyDoc = CATIA.ActiveDocument 

または

Dim CATIA as variant 
Set CATIA = Getobject(,"CATIA.Application") 
Dim oMyDoc as variant 
Dim oCurrentProd as variant 
Set oMyDoc = CATIA.ActiveDocument 

私はあなたがオブジェクトのメソッドとプロパティを参照し、その後文書として `薄暗いoMyDoc」で試してみてください変種

関連する問題