Caricare xrif in automatico

Cristina O

Utente poco attivo
professione: disegnatore
software: Autocad 2022
regione: Emilia Romagna
qualcuno sa dirmi se esiste una variabile o un'opzione per caricare in automatico gli xrif modificati? nello specifico, lavoro su più file collegati e ogni volta che mi sposto sul file "madre" mi dice che gli xrif sono da ricaricare e mi chiede conferma per ricaricarli.
e' possibile rendere evitare questa domanda e fare in modo che il disegno ricarichi in automatico gli xrif modificati?

n.b. preferisco non editare gli xrif dentro al disegno "madre" perchè è molto lento
 

Cristallo

Utente Standard
professione: Leggo e confronto
software: Lettura critica
regione: Fuori dalla cerchia
Ma questo ti succede perché editi l'xref esternamente MENTRE tieni aperto il disegno che lo contiene. Mi spiego meglio: MADRE contiene FIGLIO come xref. Tu modifichi FIGLIO in una nuova sessione Autocad , mentre MADRE è aperto.
Se modifichi FIGLIO quando madre è chiuso questo non avviene.
Se modifichi FIGLIO dall'interno di MADRE questo non avviene.
E' un comportamento normale ed è anche una caratteristica "di sicurezza", perché mentre MADRE è aperto, qualcuno (che potresti anche non essere tu) ti modifica FIGLIO, almeno tu sai che FIGLIO è stato modificato e non ritrovarti magari qualche sorpresa.
 

Cristina O

Utente poco attivo
professione: disegnatore
software: Autocad 2022
regione: Emilia Romagna
si, lo so. Ma su questi file ci lavoro solo io e ho bisogno di averli tutti aperti.
Se chiudo la Madre ogni volta allora tanto vale fare ricarica x-rif ogni volta.
mi chiedevo solo se era possibile ovviare....

grazie comunque
 

dsw

Rossano Praderi
professione: Libero Professionista
software: Vari
regione: Lombardia
Se è stato installato/abilitato il VBA in Autocad (non funziona su LT), basta incollare il codice seguente nel progetto globale dell'applicazione, all'interno di "ThisDrawing".

Questo "pezzo" di codice VBA ricarica gli x-rif del documento attivo ogni volta che il documento viene reso attivo.
Codice:
Private Sub AcadDocument_Activate()
    On Error Resume Next
    Dim aDoc As AcadDocument: Set aDoc = ThisDrawing
    Dim aBlock As AcadBlock
    For Each aBlock In aDoc.Blocks
        If aBlock.IsXRef Then aBlock.Reload
    Next
End Sub

NB.: Il codice funziona, ma è solo un esempio base e senza troppe pretese, potrebbe essere necessario fare qualche adattamento/sistemazione.
 

Cristina O

Utente poco attivo
professione: disegnatore
software: Autocad 2022
regione: Emilia Romagna
FUNZIONA PERFETTAMENTE!
è quello che cercavo!

grazie e ti sono debitrice!
 

Statistiche forum

Discussioni
59,287
Messaggi
506,329
Utenti registrati
111,449
Ultimo utente registrato
distpullina1980

Utenti online

Top