alxG88
Guest
İyi sabaha,
İşimde beni kolaylaştırmak için, çoğu zaman çalıştığım operasyonları basitleştiren sağlam kenarlar için bir dizi makro yazıyorum.
göndermek istediğim sorun şu şekildedir: Her biri için, belirli bir dizi içinde bir makro yazmaya çalışıyorum.
Daha önce aynı işlemi bir seferde bir dft ile çalışan bir makro yazdım, ama şimdi bu kavramı tüm açık dftlere uzatamam.
Yazdığım kodu koydum:
Gördüğünüz gibi bir do yaratmaya çalıştım... döngüye kadar, o zaman zaman açık dft arıyor, ama işe yaramıyor: Sonuç sadece ilk aktif dft ve sonra beni her dosya için tekrar makroa başlamam.
Bana yardım edebilir misin? Nerede yanlışım?
Her şeyden teşekkürler
Alex
İşimde beni kolaylaştırmak için, çoğu zaman çalıştığım operasyonları basitleştiren sağlam kenarlar için bir dizi makro yazıyorum.
göndermek istediğim sorun şu şekildedir: Her biri için, belirli bir dizi içinde bir makro yazmaya çalışıyorum.
Daha önce aynı işlemi bir seferde bir dft ile çalışan bir makro yazdım, ama şimdi bu kavramı tüm açık dftlere uzatamam.
Yazdığım kodu koydum:
Kod:
modül modülü
dim objapp as solidedgeframework. Uygulama uygulama uygulama uygulama uygulama uygulama uygulama uygulama uygulama uygulama uygulama uygulama uygulama uygulama uygulama uygulama uygulama
dim objdft as solidedgedraft.draftdocument
dim filename as string
dim roadname_1 as string
dim roadname_2 as string
alt ana()
Hatada bir sonraki sefere devam ediyor
objapp = getobject (, "solidedge.application") " belirli özellikleri ile bir uygulama oluşturur
Eğer objapp bir şey değilse o zaman
msgbox ("solid kenar açık değil! Açık sağlam kenar.”, vb.
çıkış alt alt alt
Sonunda, eğer sona erirse
Eğer objapp.activedocumenttype < solidedgeframework.documenttypeconstants.igdraftdocument O zaman sonra
msgbox ("no draft belgesi açık! Bir taslak açın.", vb., "attention"
çıkış alt alt alt
Sonunda, eğer sona erirse
objdft = objapp.activedocument
Eğer objdft bir şey değilse o zaman
msgbox("no açık belge!", vb., "attention"
çıkış alt alt alt
Sonunda, eğer sona erirse
Açık draftlar olduğu sürece döngüyü takip edin
objdft.save() 'in adından önce koymak, çünkü yeni dosyalar doğru bir şekilde isim vermek istenmiştir.
Dosya adı = sol(objdft.name, len(objdft.name) - 4) sadece dosya adı ile yazılır
Yol adı_1 = "s:\ug\dxf\" yol dosyası dxf
roadname_2 = "s:\ug\dati\" dosya yolu pdf
objapp.displayalerts = false 'overwrites dosyaları otomatik olarak aynı adı sormadan
objdft.saveas (pathname_1 + dosya adı + ". + "dxf" adı ile tasarruf
objdft.saveas (pathname_2 + dosya adı + ". + "pdf" adı ile tasarruf edin
objapp.displayalerts = gerçek 'aktif pencereler uyarı mesajları
objdft.close() 'sadece pdf ve dxff'ı yarattığı taslak dosyayı kapat
objdft = Hiçbir şey
objapp = Hiçbir şey
objapp.activedocumenttype <> sağlam çerçeve çalışması.documenttypeconstants. igdraft
end end end end end end end end end end end end end end end end end end end end end end end end end end end end end end end end end end
end modülü
Bana yardım edebilir misin? Nerede yanlışım?
Her şeyden teşekkürler
Alex