ciao a tutti, ho provato a scaricare tutte le regole postate で questa 議論, ho inventor 2018 e nessuna mi funziona
utilizzando 冒険
snippet'define は、ドキュメントをアセンブリファイルとして定義します。
dim oasmdoc として アセンブリドキュメント
oasmdoc = このアプリケーション.activedocument
oasmname = left(oasmdoc.displayname, len(oasmdoc.displayname) -4)
'アクティブなドキュメントがアセンブリファイルであることを確認してください
このapplication.activedocument.documenttype <> kassemblydocumentobject の場合、
messagebox.show("アセンブリファイルからこのルールを実行してください。", "ilogic")
出口のサブ
端 もし
'get user 入力
rusure = メッセージボックス.show ( _)
「これは、ファイルを描画するすべてのアセンブリコンポーネントのためのPDFファイルを作成します。」 ツイート
& vblf & "このルールは、描画ファイルがコンポーネントと同じ名前と位置を共有することを期待しています。" ツイート
と vblf と " _
& vblf & "すべてのアセンブリコンポーネントのPDF図面を作成したいですか? ツイート
& vblf & "これはしばらくかかることができます。", "ilogic - バッチ出力PDF ",messageboxbuttons.yesno"
rusure = vbno なら、
フィードバック
その他
端 もし
- - - - - - - - - - - - - - - - - - - - - - - - - -
opath = このドキュメント.path
pdfaddin = thisapplication.applicationaddins.itembyid("{0ac6fd96-2f4d-42ce-8be0-8aea580399e4}")
ocontext = thisapplication.transientobjects.createtranslationcontext
ocontext.type = iomechanismenum.kfilebrowseiomechanism
ooptions = thisapplication.transientobjects.createnamevaluemap
odatamedium = このアプリケーション。transientobjects.createdatamedium
pdfaddin.hassavecopyasoptions (odatamedium、ocontext、ooptions) なら、
'ooptions.value("all_color_as_black") = 0
ooptions.value("remove_line_weights") = 1
ooptions.value("vector_resolution") = 400
ooptions.value("sheet_range") = inventor.printrangeenum.kprintallsheets
'ooptions.value("custom_begin_sheet") = 2
'ooptions.value("custom_end_sheet") = 4
端 もし
'get pdf ターゲットフォルダパス
ofolder = opath & "\" & oasmname & "PDFファイル"
'pdfフォルダをチェックし、存在しない場合に作成する
system.io.directory.exists(ofolder)でなければ、
system.io.directory.createdirectory(フォルダ)
端 もし
- - - - - - - - - - - -
- - - - - - - - - - - - - - - - - - - - - - -
'アセンブリによって参照されるファイルを見て下さい
文書化者としてのorefdocs
orefdocs = oasmdoc.allreferenceddocuments
ドキュメントとしてのorefdoc
'参照されたモデルの描画ファイルを扱う
'これはモデルが同じパスと名前の図面を持っていることを期待しています
orefdocs の各 orefdocs
idwpathname = left(orefdoc.fulldocumentname, len(orefdoc.fulldocumentname) - 3) & "idw"
'チェックして、モデルが同じパスと名前の描画を持っていることを見る
if(system.io.file.exists(idwpathname) 以降
odrawdocをdrawdocumentとして
odrawdoc = thisapplication.documents.open(idwpathname, true) メソッド
ofilename = left(orefdoc.displayname, len(orefdoc.displayname)) -3)
エラーは、次の ' を ' に pdf が存在し、 または 読み込み のみ、 次回 を再開します。
'pdf ターゲットファイル名を設定する
odatamedium.filename = ofolder & "\" および ofilename & "pdf"
'pdfを書いて下さい
pdfaddin.savecopyas (odrawdoc、ocontext、ooptions、odatamedium)を呼ぶ
'ファイルを閉じる
odrawdoc. クローズ
その他
'モデルが同じパスと名前の図面を持っていない場合 - 何もしない
端 もし
次へ
- - - - - - - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - -
oasmdrawing = このドキュメント.changeextension(.idw)
oasmdrawingdoc = このapplication.documents.open(oasmdrawing、true)
oasmdrawingname = left(oasmdrawingdoc.displayname, len(oasmdrawingdoc.displayname) -3)
'トップレベルのアセンブリ図面ファイル用のPDFを書き込みます
エラーは、次の ' を ' に pdf が存在し、 または 読み込み のみ、 次回 を再開します。
'pdf ターゲットファイル名を設定する
odatamedium.filename = ofolder & "\" & oasmdrawingname & "pdf"
'pdfを書いて下さい
pdfaddin.savecopyas (oasmdrawingdoc、ocontext、ooptions、odatamedium)を呼ぶ
'トップレベルの図面を閉じる
oasmdrawingdoc.close ディレクティブ
- - - - - - - - - - - -
messagebox.show("&vblf & ofolder"、"ilogic") で作成された新しいファイル
「新しいファイルを保存するフォルダを開きます
シェル("explorer.exe" & ofolder,vbnormalfocus")
mi esce questo エラー

