• このフォーラムは、www.cad3d.it/forum1 - イタリアのデザインコミュニティの機械翻訳です。いくつかの用語は正しく翻訳されていません。

新しいデザインで全ての図面をコピー

  • Thread starter Thread starter Adahm
  • Start date Start date

Adahm

Guest
全てに

"corrupt" テンプレートで生成されたので、数千の大きなファイルを保存して修正する必要があります。
"clean"テンプレートから始まる新しいファイルで、すべてのシートをコピーすることで、後者は許容寸法(破損ファイル10mb未満)を持っています。

この理由から 私はこれを自動的に行うことができるルーチンを書いてみましたが、それを動作させることはできません。 しばらくの間、新しいファイルで葉をコピーするために管理しましたが、今はもう機能しませんし、私は間違っているものを理解していません。

問題が解決できる場所や問題が解決できる場所を教えてください。
お問い合わせ

私はそれが動作するようにしようとしているコードの下:
Code:
パブリックサブリダクションファイルサイズ()
' は破損したファイルのサイズを減らし、破損したファイルを上書きする新しいファイルへコピーします。

エラーのgoto err_reducingfilesize:

odrawdocをdrawdocumentとして
odrawdoc = thisapplication.activedocument を設定する

' 描画型ファイルがない場合
odrawdoc.documenttype < kdrawingdocumentobject の場合、
msgbox 「アクティブ文書は図面ではなく、vbcritical、非互換文書」
出口のサブ
端 もし

' 新しいファイルを開きます
dim は文字列として標準
sstandard = "\\\ap03\prismatech\configurazionicad\inventor\templates\standard.idw"
dim onewdrawdoc として ドロードキュメント
onewdrawdoc = thisapplication.documents.add(kdrawingdocumentobject、sstandard、true)' を設定し、 [CreateVisible] booleanとして)

' ファイルの各シートに切り込み、新しいファイルにコピーします。
シートとして dim osheet
odrawdoc の各 Osheet の シート
osheet.activate を呼び出す
' この行から動作させません。コードの残りの部分はテストされません。
osheet.copyto(onewdrawdoc) を呼び出す
次へ

'元のファイルのパスと名前を記録します
dim sfullfilename 文字列
sfullfilename = odrawdoc.fullfilename

「最初のシートを削除」
1wdrawdoc の各 Osheet の場合。 シート
osheet を呼び出す。 削除
出口のための
次へ

' ドキュメントを更新する
onewdrawdoc.update を呼び出す

'元のファイルを閉じる
呼び出しodrawdoc.close(false)

' 元のファイルを上書きすることによって新しい文書を保存します
onewdrawdoc.saveas(sfullfilename、false) を呼び出す

err_reducingfilesize:
debug.printのerr.description
次へ進む
メニュー
 
こんにちは。
試してみる 1651057015606.png「正しい」からそれらをコピーすることにより、描画(カップリングカードなど)のリソースのフォルダに存在するID内の質量に置き換えることができます
データに同じ名前がある場合、 "errate" ファイルに内容を置き換えます。
私はそれがあなたのケースであなたを助けることができるかどうかわからない
 
こんにちは、マット、
カート、正方形など...正しい、破損するファイルです。
シートを新しいファイルにコピーして、すべてを修正するために見つけた唯一の方法は、コードです。
 
私はそれが素晴らしい動作すると思う真実を伝えるために(コードのありがとう、この時点で!)

操作を良くするタッチのカップルを作りましたが、機能します。

私の変更を試してみる:
- クラッシュする場所を見るためにmsgboxesのカップルを追加しました。
- 最初のシートを削除するためのサイクルの代わりに、私は直接アクセスに行ってきました。
- 対象ファイルの名前を変更しましたので、もう理解しなかった名前に混乱しません。

何が間違っていますか?
Code:
パブリックサブリダクションファイルサイズ()
' は破損したファイルのサイズを減らし、破損したファイルを上書きする新しいファイルへコピーします。

エラーのgoto err_reducingfilesize:

odrawdocをdrawdocumentとして
odrawdoc = thisapplication.activedocument を設定する

' 描画型ファイルがない場合
odrawdoc.documenttype < kdrawingdocumentobject の場合、
msgbox 「アクティブ文書は図面ではなく、vbcritical、非互換文書」
出口のサブ
端 もし

' 新しいファイルを開きます
dim は文字列として標準
sstandard = "\\\ap03\prismatech\configurazionicad\inventor\templates\standard.idw"
dim onewdrawdoc として ドロードキュメント
onewdrawdoc = thisapplication.documents.add(kdrawingdocumentobject、sstandard、true)' を設定し、 [CreateVisible] booleanとして)
msgbox "新しいテーブル"
' ファイルの各シートに切り込み、新しいファイルにコピーします。
シートとして dim osheet
odrawdoc の各 Osheet の シート
osheet.activate を呼び出す
msgbox またはシート。 お名前 (必須)
' この行から動作させません。コードの残りの部分はテストされません。
osheet.copyto(onewdrawdoc) を呼び出す
次へ

'元のファイルのパスと名前を記録します
dim sfullfilename 文字列
sfullfilename = odrawdoc.fullfilename
sfullfilename = strings.replace(sfullfilename、odrawdoc.displayname、new_"、odrawdoc.displayname)
「最初のシートを削除」
onewdrawdoc.sheets.item(1). 削除
1wdrawdoc の各 orsheet の場合。 シート
'osheet を呼び出します。 削除
' 出口
「次へ」

' ドキュメントを更新する
onewdrawdoc.update を呼び出す

'元のファイルを閉じる
呼び出しodrawdoc.close(false)

' 元のファイルを上書きすることによって新しい文書を保存します
onewdrawdoc.saveas(sfullfilename、false) を呼び出す

err_reducingfilesize:
debug.printのerr.description
次へ進む
メニュー
 
私はそこに投げます:あなたがvaultとファイルを上書きするのは、単独で読むことではありませんか?
 
お問い合わせ
問題が起きたところに気付きました。 修正しなければならないファイルの練習では、イメージを含む古いファイルがありますので、コピーコマンドはそれらの状況でのみ動作しません。
シートをコピーする前に軟骨を解決するため。

ps: 最初のシートを削除するためのコマンドラインのおかげで。 onewdrawdoc.sheets.item(1) 行に "s" を "sheet" に置かなかった。 削除するので、私は循環していた。
 
私はそこに投げます:あなたがvaultとファイルを上書きするのは、単独で読むことではありませんか?
はい、私は悪いのですが、それらを抽出して、マクロを実行してそれらをアーカイブします。
です。
ボールトの操作を直接行うことができれば知っていますか?
私は決してコードをボルトで書いていません。
 
私は知っていることはありません, 決して悪用を使用せず、私はそれがvbaを介して管理可能な方法を知りません...
 
vba ではなく c# や c++ でのみ管理できると思います。
このために私は非常に満足していない
 
深みのある議論を再開します。
上記の手順で、次のコマンドで常に:
- ファイル閉鎖(保存なし)
- ファイルを保存する
必要としているかどうかは必ず確認しなければなりません。
確認ウィンドウを外すことなく、保存またはしないと、コマンド行で指定できるかどうかは、誰が知っていますか?
 
プロンプトを無効にするには、次のようになります。
このapplication.silent = true操作
 
ありがとうございます。
オンラインヘルプから、.close(false) コマンドの (false) が保存するように頼らなかったと思ったが、明らかに何か他のものを提供する。 お問い合わせ
 
私が知っているもの/私は理解しています

ドキュメント。クローズ( ) [ナビゲーションボオラン
.close(true) → 保存せずに閉じる
.close(false) -> 保存とクローズ
このアプリケーション。 Silent = falseoperation -> ダイアログ ボックス
このアプリケーション。 サイレント = trueoperation -> 確認を要求することなく直接保存
 

Forum statistics

Threads
46,674
Messages
380,976
Members
2
Latest member
loop80
このフォーラムは、www.cad3d.it/forum1 - イタリアのデザインコミュニティの機械翻訳です。いくつかの用語は正しく翻訳されていません。

Members online

No members online now.
Back
Top