仕事のカタマリにようこそ!  [ ログイン | ユーザ登録 ]
フォーラムから検索

機械用3D-CAD SolidWorks非公認のユーザサイトです
 
 
Web katamari.org
仕事のカタマリ
ホーム リンク集 ダウンロード フォーラム(掲示板) FAQ お問い合わせ









フォーラムニュース: 質問、相談カテゴリに「SolidWorks操作方法」に関するフォーラムを追加しました。(2003/11/27)
いらっしゃい、 ゲストさん. まずはこちら→ ログイン または 登録. 2024/11/23 - 16:07:03
ホーム ヘルプ 検索 ログイン 登録

仕事のカタマリ 掲示板  |  SolidWorks一般  |  SolidWorksのカスタマイズ (議長: webmaster)  |  トピック: 図面に特定データを付加する 前のトピック 次のトピック
ページ: [1] Page Bottom 返信 返信のお知らせ Print 
   著者  トピック: 図面に特定データを付加する  (閲覧数 2561 回)
sw2007
Jr. メンバー
**

オフライン

投稿: 12



WS2007 SP4

プロファイルを見る メールアドレス
図面に特定データを付加する
« 投稿日: 2008/01/29 - 11:55:04 »
引用して返信

いつもお世話になっています。

現在、「Design Library」にあるデータを自作で作成して使用しているのですが、
図面データの特定の場所に手作業で付加しています。

場所と付加するデータはいつも同じです。

この操作をマクロなどで行えないでしょうか??

マクロの登録で行ってみたのですが、うまくいきません。
実際にマクロを登録した、プログラムを使用してみると、エラーとなってしまいます。

どなたかご存知ありませんか??

以上です。よろしくお願いします。
議長に報告する   記録済み
Makoron
カタマリの王様!?
*****

オフライン

投稿: 1277



SW2011SP5.0

プロファイルを見る
Re:図面に特定データを付加する
« 返信 #1 投稿日: 2008/01/29 - 12:41:11 »
引用して返信

sw2007さん、こんにちは。

「Design Library」にあるデータとはブロックでしょうか?
もしブロックなら、添付したサンプルマクロを参考にしてみてください。
 InsertBlockSample.lzh
議長に報告する   記録済み
hisa
カタマリの王様!?
*****

オフライン

投稿: 507



PANDA-Z!!

プロファイルを見る WWW
Re:図面に特定データを付加する
« 返信 #2 投稿日: 2008/01/29 - 12:46:38 »
引用して返信

書いてる途中にMakoronさん投稿を確認しましたが一応投稿…

"Design Library"が何を指しているかが分かりませんが、
図面ということは、きっとシンボルなどブロック登録したものを
挿入したいと予想して回答します。

試しに、マクロの記録を行い再度実行してみましたが、エラーが
発生しました。
確認したところ、InsertAnnotationFavoriteメソッドの返り値が
boolstatus(Boolean型)となっていました。
正しくは、Annotation型が返り値となります。


引用:
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swAnnotation As SldWorks.Annotation

Sub main()

Set swApp = Application.SldWorks

Set swModel = swApp.ActiveDoc
If swModel.GetType <> swDocDRAWING Then
    Exit Sub
End If

Set swAnnotation = swModel.Extension.InsertAnnotationFavorite("C:\Program Files\SolidWorks\data\design library\Annotation\ssf0.8-1.6g.sldsffvt", 0, 0, 0)

End Sub


と、マクロの説明をしましたが、既にブロックを挿入したものをテンプレートとして
用意しておくのも手かと思います。

以上、ご参考まで。
議長に報告する   記録済み
sw2007
Jr. メンバー
**

オフライン

投稿: 12



WS2007 SP4

プロファイルを見る メールアドレス
Re:図面に特定データを付加する
« 返信 #3 投稿日: 2008/01/29 - 12:59:53 »
引用して返信

Makoronさん、 hisaさんありがとうございます。

表現がわかりにくくすいません。"Design Library"とはブロックの事です。

hisaさんが書かれたように、テンプレートとして付加しておくのが一番簡単
なのですが、システムの決まりになっているのでしかたありません。。。
(人がシステムに縛られるのは??なのですが。。。)
この辺りはあまりつっ込めません(;_:)

早速試してみます。ありがとうございました。

結果は後ほどご連絡いたします。
議長に報告する   記録済み
sw2007
Jr. メンバー
**

オフライン

投稿: 12



WS2007 SP4

プロファイルを見る メールアドレス
Re:図面に特定データを付加する
« 返信 #4 投稿日: 2008/01/30 - 14:59:08 »
引用して返信

サンプル参考にさせて頂きました。

Makoronさん、 hisaさんの両方とも動作いたしました。ありがとうございます。

ご提供頂いたのに質問がございます。

それぞれのサンプルマクロで
Makoronさんのサンプルは拡張子が「*.sldblk」の拡張子ファイルが付加でき、
hisaさんのサンプルは拡張子が「*.sldsffvt」の拡張子ファイルが付加できます。

逆はできませんでした。。

それは、ブロック挿入マクロのメソッドが違うからでしょうか??
(下記を参照ください)

Makoronさんサンプル
swSketchManager.MakeSketchBlockFromFile(..略..)

hisaさんサンプル
swModel.Extension.InsertAnnotationFavorite(..略..)

どうでしょうか??
議長に報告する   記録済み
Makoron
カタマリの王様!?
*****

オフライン

投稿: 1277



SW2011SP5.0

プロファイルを見る
Re:図面に特定データを付加する
« 返信 #5 投稿日: 2008/01/30 - 17:42:03 »
引用して返信

そうですね、
拡張子が「*.sldblk」はブロックで拡張子が「*.sldsffvt」はアノテートアイテムになります。
そのため、扱う為のオブジェクト自身が違ってきます。

ブロックの場合は、swSketchManager.MakeSketchBlockFromFile(..略..)
アノテートの場合は、swModel.Extension.InsertAnnotationFavorite(..略..)
と言う事になります。

もし、マクロで切り替えたいと言う事でしたら。
対象のパスを、拡張子で判断して、
swSketchManager.MakeSketchBlockFromFileを使うか
swModel.Extension.InsertAnnotationFavoriteを使うか
を分岐させてあげればいいと思います。
議長に報告する   記録済み
sw2007
Jr. メンバー
**

オフライン

投稿: 12



WS2007 SP4

プロファイルを見る メールアドレス
Re:図面に特定データを付加する
« 返信 #6 投稿日: 2008/01/30 - 19:42:26 »
引用して返信

ご指導ありがとうございます。
いつも感謝しています!!

了解しました!
拡張子で判断すれば良いですね。

対応させたいと思います。
議長に報告する   記録済み
ページ: [1] Page Top 返信 返信のお知らせ Print 
仕事のカタマリ 掲示板  |  SolidWorks一般  |  SolidWorksのカスタマイズ (議長: webmaster)  |  トピック: 図面に特定データを付加する 前のトピック 次のトピック
ジャンプします: