Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Crash di Excel su ActiveWorkbook.Close... vi è mai capitato?

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Crash di Excel su ActiveWorkbook.Close... vi è mai capitato?

Postdi maxmula » 17/06/10 15:42

Come da titolo.
Ho provato la mia macro sulla macchina del committente... Funziona tutto alla grande ma al momento di chiudere il file elaborato Excel (versione 2003) va in crash e chiede di inviare un report a Microsoft.

Finora tutto quello che sono riuscito a fare è stato spostare l'istruzione incriminata alla fine dell'elaborazione, in modo da poter comunque salvare il file e ripulire un po' di file temporanei lasciati in giro...

Sarei però curioso di sapere se a qualcuno è già successo qualcosa del genere... a magari se sapete a cosa è dovuto.

Ovviamente, sul mio portatile tutto funziona senza problemi.
:-?

Ciao,
MAx
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34

Sponsor
 

Re: Crash di Excel su ActiveWorkbook.Close... vi è mai capitato?

Postdi Anthony47 » 18/06/10 01:19

Domande a caso senza nessuna garanzia che mi si accendera' una lucina: La macro e' contenuta nel workbook che chiudi? Come viene lanciata? In ThisWorkbook ci sono delle macro? Il fattaccio succede anche con una macro che contiene solo ActiveWorkbook.Close?

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13885
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Crash di Excel su ActiveWorkbook.Close... vi è mai capitato?

Postdi maxmula » 18/06/10 08:49

- La macro è contenuta in un altro workbook che richiama quello incriminato come template;
- Il problema capita anche se il workbook non è attivo (ovviamente non lo chiudo con activeworkbook.close ma con workbooks(NOMEWORKBOOK).close.
- Il problema capita anche se salvo il workbook con altroo nome e poi provo a chiuerlo così rinominato (su alcuni forum parlavano di problemi dovui alla presenza di caratteri speciali nel nome file

- Nel workbook che presenta il problema è dichiarato l'evento Workbook_Open, che contiene una dozzina di righe che si limitano ad applicare delle impostazioni di pagina (margini & poco altro)

- Se ne l workbook lancio una macro che contiene il solo comando di chiusura, il foglio si chiude senza problemi... sia sukl mip pc che sulla macchina destinazione.

Pensandoci, potrebbe una condizione che potrebbe forse dar fastidio, ed è correlata al modo con cui apro il workbook template:

- Apro il foglio principale; Qui, l'evento Workbook_Open innesca un countdown di 10 secondi (basato su Application.OnTime)
- Se l'utente seleziona una qualunque casella del foglio (Workbook_SelectionChange), il conteggio si interrompe ed è possibile modificare alcune celle.
- Se il conteggio arriva a 0, viene avviata una macro che apre il template e lo usa per elaborare dei tabulati, producendo dei grafici.

- Al termine dell'elaborazione, il fie template viene salvato con un nome generato automaticamente (tipo 2010-06-18_09-35-12_Report.xls), inoltre tutti i grafici vengono esportati in formato bitmap (PNG); tutti i file così generati vengono poi compressi in un archivio tramite comando Shell. Quindi succede il fattaccio.

Non saprei, forse il fatto che nel foglio principale c'è ancora l'evento OnTime in esecuzione potrebbe dare qualche noia? E se sì, perchè non sul mio computer?

Ciao,
MAx
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34

Re: Crash di Excel su ActiveWorkbook.Close... vi è mai capitato?

Postdi Flash30005 » 18/06/10 09:36

Il nome del file deve essere tra virgolette e poi inserisci l'opzione di salvataggio (vero o falso)
Workbooks("NomeFile.xls").Close savechanges:=True 'oppure =False

Fai sapere
Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Crash di Excel su ActiveWorkbook.Close... vi è mai capitato?

Postdi Anthony47 » 18/06/10 18:59

Se hai usato OnTime solo per contare il primi 10 secondi, e non l' hai schedulata ulteriormente, non hai nessun evento pianificato; non dovrebbe essere un problema.
Succede su piu' pc del cliente? E se metti un break sull' istruzione ".close" e la esegui tramite F8 dopo "qualche secondo" cambia l' esito?
Le versioni di excel + s.o. sono le stesse? Hai gia' provato, sulla macchina che va in crash, a installare gli aggiornamenti raccomandati?
Come vedi in assenza di idee continuano le domande...

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13885
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Crash di Excel su ActiveWorkbook.Close... vi è mai capitato?

Postdi maxmula » 21/06/10 16:56

Rispondo solo ora perchè la macchina remota è tornata disponibile solo nel tardo pomeriggio.

- Il problema si verifica anche mettendo un break e facendo eseguire manualmente l'istruzione .close (F8)
- Ho provato anche ad aggiungere il parametro savechanges:=false, ma il risultato è lo stesso.
Per ora sono riuscito ad arrivare ad una condizione di "crash" pilotato, per cui Excel si schianta dopo aver elaborato e salvato tutto ciò che dovrebbe. Misteriosamente, sembra non rimanere traccia nemmeno dell'ultimo file temporaneo che mi aspettavo rimanesse aperto... ma non ci giurerei, magari tra 2 mesi lo trovo in una cartelal temporanea sperduta nelle più remote lande del disco... per fortuna il nome di questo file non cambia mai, per cui non rischio di intasare il filesystem.
Ulteriori prove domani... sperando nella stabilità della rete :)

- le versioni di Office sono le medesime (2003 entrambe), purtroppo, come spesso capita con le macchinedi laboratorio, non saprei dire molto sugli aggiornamenti. Di sicuro il mio PC non è molto aggiornato come SO, ma Office è al SP2 sulla macchina del cliente invece c'è Office 2003 SP1.
Domani provo a richiedere un aggiornamento... ora però scappo a casa! :)

Ciao,
MAx
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34

Re: Crash di Excel su ActiveWorkbook.Close... vi è mai capitato?

Postdi Anthony47 » 22/06/10 23:39

Il discorso dell' F8 l' avevo fatto pensando che potesse esserci un collegamento tra "il fattaccio" e il comando Shell; come e' noto Shell "avvia" un comando, che si completa poi in asincrono con una tempistica che dipende dal tipo di comando, e nel frattempo il vba continua le sue istruzioni; ecco, volevo chiudere il workbook quando il comando Shell era certamente concluso.
Purtroppo tutto questo discorso non mi ha acceso nessun neurone.... Se trovi qualcosa di interessante non mancare di aggiornarci.

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13885
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Crash di Excel su ActiveWorkbook.Close... vi è mai capitato?

Postdi maxmula » 23/06/10 07:55

In questo caso mi sento comunque di discolpare il comando Shell, in quanto uso una funzione particolare (ShellAndWait) che mi permette di sospendere l'esecuzione della macro finché il processo richiamato non termina.

Ovviamente per fare questo ho preso a prestito un po' di farina dal sacco altrui... la fonte è questa

Ciao,
MAx
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34

Re: Crash di Excel su ActiveWorkbook.Close... vi è mai capitato?

Postdi Flash30005 » 23/06/10 08:56

Interessante lo script!
Mi permette di implementare un lavoro realizzato tempo fa:
si tratta di un programma che apre dei documenti a "diffusione controllata" dietro il click dell'utente.
Finora registravo Utente, data e ora di apertura del documento ma...
con questo script potrei inserire anche la durata della lettura :)

Grazie Max ;)

P.s. Gli utenti sono già avvisati da un messaggio che sono soggetti a monitoraggio
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Crash di Excel su ActiveWorkbook.Close... vi è mai capitato?

Postdi maxmula » 23/06/10 09:02

LOL! che fareste senza di me... :P :P :P :P :P

MAx
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34


Torna a Applicazioni Office Windows


Topic correlati a "Crash di Excel su ActiveWorkbook.Close... vi è mai capitato?":


Chi c’è in linea

Visitano il forum: Nessuno e 11 ospiti