Şimdiki kontrol istasyonu

  • Konuyu başlatan Konuyu başlatan Riccardo81
  • Başlangıç tarihi Başlangıç tarihi
Bana bir göz atmaya çalıştığım kodu göndermeyi denemek istiyorsanız, hatta özel olarak tercih ettiğiniz gibi.
 
Teşekkür ederim... Bu şeylerin paylaşıldığı doğru... İşte kod:
Kod:
Public sub main()

" controllace titolo nel documento attivo
Deneyin
dim odrawdoc as çizimdocument
Odrawdoc = buapplication.activedocument

" verifica se lo stato di deferimento degli aggiornamenti ègeliteato
Eğer odrawdoc.drawings.deferupdates sonra
msgbox("non è possibile modificare il cartiglio perché il file di disegno è in modaliteà di aggiornamento differentito.")
çıkış alt alt alt
Sonunda, eğer sona erirse

" rimuove i simboli: disegno
Deneyin
deletesymbols()
Ekstraları istisna olarak yakalamak
msgbox ("errorekedte la Cancellazione dei simboli: " & ex.message)
Sonunda deneyin

" titolo desiderato
dim ünvanı = "standart"
İsim (İngilizce)

Ekstraları istisna olarak yakalamak
msgbox ("errorekedte la sostituzione del cartiglio: " & ex.message)
Sonunda deneyin

Sonunda alt alt

sub replacetitle(byref ünvanı as string)

dim odrawdoc as çizimdocument
Odrawdoc = buapplication.activedocument
dim şablonu as string = "t:\produzione do sa\ configureurazioni_autodesk\inventor\templates\standart.idw"

dim otemplate as çizimdocument
dim osourcetitleblockdef as titleblockdefinition
dim onewtitleblockdef as titleblockdefinition

Deneyin
'Apre'
Otemplate = buapplication.documents.open(template, false)

" verifica se il cartiglio esiste nel şablon
Eğer otemplate.titleblockdefinitions.item (title) o zaman hiçbir şey değildir.
Osourcetitleblockdef = otemplate.titleblockdefinitions.item(title)

"Polis La, sana bir del cartiglio nel disegno
Onewtitleblockdef = osourcetitleblockdef.copyto(odrawdoc, true)

" chiude
Otemplate.close

" scorre holdti i fogli nel documento di disegno e applica di nuovo cartiglio
Odrawdoc'daki her oform için. çarşaflar
"Emekna il cartiglio korrente e inserisce quello nuovo
Eğer osheet. Başlıkblock o zaman hiçbir şey değildir
Sayfa.titleblock.delete()
Sonunda, eğer sona erirse
Nottitleblock(onewtitleblockdef)
Bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki

msgbox ("cartiglio aggiornato a: " & Title & " su tutti i fogli.")
Başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka başka
msgbox ("cartiglio non trovato nel şablon.")
Otemplate.close
Sonunda, eğer sona erirse

Ekstraları istisna olarak yakalamak
msgbox("errorekedte l'aggiornamento del cartiglio: " & ex.message)
Sonunda deneyin

Sonunda alt alt

Sub deletesymbols()
dim odoc as çizimdocument = thisdoc.document
dim osksymdefs asdrewedsymboldefinitions = odoc.sketchedsymboldefinitions

Her osksymdef için çizildiği gibi, osksymdefs
Eğer osksymdef değilse. Daha sonra ortaya çıktı.
Osksymdef.delete()
Sonunda, eğer sona erirse
Bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki
Sonunda alt alt

alt kopyalarymbols()
dim string olarak seçildi = "result2"
dim strstamplist yeni dizilist olarak
strstamplist.add("standart")

strs selectedstamp = girdilistbox ("Lütfen bir pul seçin.", strstamplist, strseçmişamp, "stamp seçimi", "kanım pulları")

dim strdrawdoc as çizimdocument = buapplication.activedocument
dim sourcefile as string = "t:\produzione do sa\ settingurazioni_autodesk\inventor\templates\stand.idw"

Deneyin
'Apreanca file devilgente dei simboli
dim stranaidw as çizimdocument = buapplication.documents.open(source, false)

"Polis i simboli nel documento korrente
Her sembolün çizildiği gibi, stranaidw.sketchedsymboldefinitionsymboldefinitions
Semboldef.copyto (strawdoc, true)
Bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki

stranaidw.close()

Ekstraları istisna olarak yakalamak
msgbox ("errorekedte la polisia dei simboli: " & ex.message)
Sonunda deneyin
Sonunda alt alt
 
Geri gel. Ben de bir şey yaptığıma sevindim.
Haftasonunda, yaralanmış koddan başlayarak, burada bazı kod parçalarını sallamaya çalışan bazı "empirical" testleri yapmayı başardım ve sonunda işe yarıyor gibi görünüyor.
Muhtemelen bir test ve diğer arasında bir icat olduğunu belirtmek isterim çünkü ilk başta bana bazı hatalar verdi... başka bir hit olmadığını umuyoruz!
Bunu denemek ve herkese teşekkür etmek isteyenler için paylaşıyorum, özellikle de paylaşım ve destek için.
ah... Bana nasıl yaptığımı sormuyorum!... bazen biraz azim ve... çok şans.
Kod:
Public sub main()
‘ Aktif belgede kontrol başlığı
Deneyin
dim odrawdoc as çizimdocument
Odrawdoc = buapplication.activedocument
" verifica che lo stato di defer update sia disabilitato
Eğer odrawdoc.drawings.deferupdates = gerçek o zaman
Odrawdoc.drawings.deferupdates = false
Sonunda, eğer sona erirse

" sostituisci i simboli nel disegno
Deneyin
deletesymbols
yakalama yakalama yakalama
" gestione dell' Terroregglete l'eliminazione dei simboli
Sonunda deneyin
' percorso del şablon e nome del cartiglio
dim şablonpath as string = "t:\produzione \ configureurazioni_autodesk\inventor\templates\standart.idw"
dim ünvanı = "standart"

" sostituzione del cartiglio su tutti i fogli
Nameonallsheets (templatepath, ünvan)
yakalama yakalama yakalama
msgbox ("errorekedte la sostituzione del cartiglio")
Sonunda deneyin
Sonunda alt alt
Sub replacetitleonallsheets (byval templatepath as string, byval ünvanı as string)
dim odrawdoc as çizimdocument
Odrawdoc = buapplication.activedocument
dim otemplate as çizimdocument
dim osourcetitleblockdef as titleblockdefinition
dim onewtitleblockdef as titleblockdefinition
Deneyin
'Aprica şablon
Otemplate = buapplication.documents.open(templatepath, false)

' collega la def youone del nuovo cartiglio
Osourcetitleblockdef = otemplate.titleblockdefinitions.item(title)

'Demekli la def youone del cartiglio nel nuovo disegno
Onewtitleblockdef = osourcetitleblockdef.copyto(odrawdoc, true)

' chiudi'
Otemplate.close
"Buera su tutte le tavole e sostituisci il cartiglio
i as Full = 1 to odrawdoc.sheets.counts.counts
Sayfa = odrawdoc.sheets.item(i)
Adıblockonsheet(osheet, onewtitleblockdef)
Bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki
Ekstraları istisna olarak yakalamak
msgbox ("errore: " & ex.message)
Sonunda deneyin
Sonunda alt alt
Sub replacetitleblockonsheet(oform as page, onewtitleblockdef as titleblockdefinition)
Hatada bir sonraki sefere devam ediyor
" verifica se esiste un titleblock sulla tavola e se è sostituibile
Eğer o tablo değilse. Başlıkblock o zaman hiçbir şey değildir
Osheet.titleblock.delete() "149na kartiglio esistente, se presentee
Sonunda, eğer sona erirse

" aggiungi il nuovo cartiglio alla tavola
dim oprompts(2) as string
Oprompts **** = ""
Oprompts (1) = ""
Oprompts(2) = ""
Nottitleblock(onewtitleblockdef, , oprompts)
Hata goto 0
Sonunda alt alt
Sub deletesymbols
dim odoc as çizimdocument = thisdoc.document
dim osksymdefs asdrewedsymboldefinitions = odoc.sketchedsymboldefinitions
dim osksymdef, çizildiği gibi
Her osksymdef için
Eğer osksymdef.isreferenced = false o zaman
Osksymdef.delete
Sonunda, eğer sona erirse
Bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki bir sonraki
Sonunda alt alt
 
... kurala başlamadan önce tüm çarşafları diğerleriyle güncellemeniz gerektiğini ekliyorum (veya komut) uygun (biri iki beyaz çarşaf ve üst soldaki yıldırım) aksi takdirde cartiglio'yu yalnızca diğerlerinde kaldırırken değiştirirsiniz.
 
Herkese merhaba ve size çok teşekkür ederim @batleo Kod için. Benden işe yarıyor.
Arabatiglio ve temizleme sembollerini değiştirmek için ek olarak, güncelleştirme stilleri ekleyebilir misiniz?

Şimdi yaptığım operasyon değiştirilebilir ( menü stilleri ve standart)
Ve sonra yönetmek> purge

Teşekkür ederim çok teşekkür ederim
 

Forum İstatistikleri

Konular
58,521
Mesajlar
499,056
Kullanıcılar
104,110
Son Üye
ChristianR

Çevrimiçi Üyeler

Şu anda çevrimiçi üye yok.
Geri
Üst