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

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









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

仕事のカタマリ 掲示板  |  SolidWorks一般  |  SolidWorksのカスタマイズ (議長: webmaster)  |  トピック: AddCustomInfoについて 前のトピック 次のトピック
ページ: [1] Page Bottom 返信 返信のお知らせ Print 
   著者  トピック: AddCustomInfoについて  (閲覧数 2597 回)
ATR
新人さん
*

オフライン

投稿: 4



I'm a llama!

プロファイルを見る
AddCustomInfoについて
« 投稿日: 2006/03/01 - 11:38:58 »
引用して返信

みなさん初めまして。
最近APIを始めたのですが、AddCustomInfoについて分からない事があります。どなたかご存知の方がいらっしゃいましたらご教示下されば幸いです。Solidworks2006を使用しています。

図面(*.SLDRW)の更新日をボタン一つで書き換えられるように試みています。
「注記」の「プロパティへリンク」機能を使えば更新日が出せるのですが、ここを時間無しの日付のみにしたいと思っています。
どうにもここは弄れそうにないので、マクロを使ってファイルのプロパティの内容を変える方法にしようと思っています。
海外のサイトから、それ用のマクロサンプルを見つけたのですが、上手く行きません。

Code:
Dim swApp As Object
Dim DrawingDoc As Object
Sub main()
  Set swApp = CreateObject("SldWorks.Application")
  Set DrawingDoc = swApp.ActiveDoc
  retval = DrawingDoc.DeleteCustomInfo("Date completed")
  retval = DrawingDoc.AddCustomInfo("Date completed", "Date", Str(Date))
  DrawingDoc.EditRebuild
End Sub

内容は以上の通りなのですが、Deleteは出来てもAddの方が出来ません。
GetCustomInfoで現在の情報を得る事も出来ます。ADDだけが出来ません。
DeleteとGetが出来るので「注記」やファイルのプロパティの設定間違いとも思えないのですが、何か勘違いをしているのだと思います。
何かご存知の方いらっしゃいませんでしょうか?
議長に報告する   記録済み
hiropon
Sr. メンバー
****

オフライン

投稿: 84



I'm a llama!

プロファイルを見る
Re:AddCustomInfoについて
« 返信 #1 投稿日: 2006/03/01 - 13:12:40 »
引用して返信

ATRさんこんにちは

retval = DrawingDoc.AddCustomInfo("Date completed", "Date", Str(Date))

第二引数 FieldTypeを "Date" から "日付" とするとできましたよ
議長に報告する   記録済み
Makoron
カタマリの王様!?
*****

オフライン

投稿: 1277



SW2011SP5.0

プロファイルを見る
Re:AddCustomInfoについて
« 返信 #2 投稿日: 2006/03/01 - 13:47:18 »
引用して返信

ちなみにFieldTypeを"テキスト"にしても可能でしたので紹介します。
    retval = DrawingDoc.AddCustomInfo("Date completed", "テキスト", Date)

また、SW2006であれば、AddCustomInfo3を使った方が良いかもしれないので、こちらも紹介します。
(APIマニュアルにはAddCustomInfoが載っていないし、FieldTypeも文字列で指定しなくて良いので今回のような英語−日本語の問題も発生しません。)
    retval = DrawingDoc.AddCustomInfo3("", "Date completed", swCustomInfoText, Date)

*第3引数は、Str(Date)でもDateでも問題なく動きました。
*"Date completed"は日本語で"更新日"としても問題ないですよ。
    (プロパティの項目名が"更新日"になるだけです。)
議長に報告する   記録済み
ATR
新人さん
*

オフライン

投稿: 4



I'm a llama!

プロファイルを見る
Re:AddCustomInfoについて
« 返信 #3 投稿日: 2006/03/01 - 15:11:06 »
引用して返信

お二方とも、素早いレスありがとうございます。とても助かりました!
日本語の問題でしたか・・・今後もこの問題で壁に当たっていたと思うので聞いて良かったです。

Makoronさんの方法も試していたのですが何故か上手く表示されません。
でも日本語の引数で上手く行ったので取り合えずOKとしたいと思います。
議長に報告する   記録済み
Makoron
カタマリの王様!?
*****

オフライン

投稿: 1277



SW2011SP5.0

プロファイルを見る
Re:AddCustomInfoについて
« 返信 #4 投稿日: 2006/03/01 - 19:35:46 »
引用して返信

'
引用元: ATR 投稿日 '.timeformat('1141193466').'   
'Makoronさんの方法も試していたのですが何故か上手く表示されません。
でも日本語の引数で上手く行ったので取り合えずOKとしたいと思います。

OKと言う事でレスつける必要はないかと思ったのですが、気になったので一つ確認させてください。(と、言うより説明不足だった?)

うまく表示されないのは、どれ?
A.retval = DrawingDoc.AddCustomInfo("Date completed", "テキスト", Date)
B.retval = DrawingDoc.AddCustomInfo3("", "Date completed", swCustomInfoText, Date)
C.どちらでもない。もっと別の部分

もし「A」だとしたら"テキスト"を全角カナにしている可能性があります。
半角カナで指定してください。
議長に報告する   記録済み
ATR
新人さん
*

オフライン

投稿: 4



I'm a llama!

プロファイルを見る
Re:AddCustomInfoについて
« 返信 #5 投稿日: 2006/03/02 - 13:38:29 »
引用して返信

Makoronさん、こんにちは。レスありがとうございます。

現在は以下のようにして上手く動作しています。
Code:
  retval = DrawingDoc.AddCustomInfo("更新日", "日付", Str(Date))


しかし以下の方法では上手く行きません。
Code:
retval = DrawingDoc.AddCustomInfo3("", "Date completed", swCustomInfoText, Date)

何が悪いのやらよく分かりません。とにかくプロパティに追加されません。
上のDateの部分を"test"と入れても変わりませんでした。

上の方法では上手く行くのに、下でダメなのは何故でしょうね。
うーむ。私としても下の方法で上手く行くならその方が良いのですが、でも一応は解決したのでお手間にならない程度にお願いしたいと思います。
議長に報告する   記録済み
hisa
カタマリの王様!?
*****

オフライン

投稿: 507



PANDA-Z!!

プロファイルを見る WWW
Re:AddCustomInfoについて
« 返信 #6 投稿日: 2006/03/02 - 13:47:28 »
引用して返信

ATRさんこんにちは

'
引用元: ATR 投稿日 '.timeformat('1141274309').'   
'しかし以下の方法では上手く行きません。
Code:
retval = DrawingDoc.AddCustomInfo3("", "Date completed", swCustomInfoText, Date)

何が悪いのやらよく分かりません。とにかくプロパティに追加されません。
上のDateの部分を"test"と入れても変わりませんでした。



もしかしたら、『SolidWorks2006 Constant type library』の参照がされていないから
かもしれません。
"AddCustomInfo3"メソッドの引数にある"swCustomInfoText"は、上記ライブラリ内に
定義されている定数なので、マクロ編集画面で[ツール]→[参照設定]から、上記ライブラリを
探してチェックを入れれば解決すると思います。
議長に報告する   記録済み
ATR
新人さん
*

オフライン

投稿: 4



I'm a llama!

プロファイルを見る
Re:AddCustomInfoについて
« 返信 #7 投稿日: 2006/03/03 - 09:02:46 »
引用して返信

hisaさん、おはようございます。
レスありがとうございました。

上手く行きました!おっしゃる通り、ライブラリの参照登録をしていませんでした。
初歩的なことでつまづいていたようです。
議長に報告する   記録済み
ページ: [1] Page Top 返信 返信のお知らせ Print 
仕事のカタマリ 掲示板  |  SolidWorks一般  |  SolidWorksのカスタマイズ (議長: webmaster)  |  トピック: AddCustomInfoについて 前のトピック 次のトピック
ジャンプします: