Come cancellare la memoria delle macro
Hai un problema con Excel?
Come cancellare la memoria delle macro?
di Tech84 data: 07/08/2017 21:34:48
Ciao a tutti, finalmente sto finendo un progetto, riscontro un problema su un file che però essendo un file aziendale non posso postare.
Questo file contiene dei modelli di varie funzioni divisi in diversi fogli, contenenti macro, formule.
Una volta che l'amministratore setta la configurazione di alcuni parametri il file viene salvato con nome, quindi riassumendo ho un file vergine che una volta configurato assume un nome X...
Se apro o creo un altro file con un nome comunque diverso mi succede qualcosa di strano...
Praticamente se apro un qualsiasi file per visionare magari alcuni numeri e lo chiudo (anche senza salvare), questo file stranamente me lo ritrovo aperto in automatico.
Mi chiedevo se in VBA esiste una specie di cache che viene salvata e lui appena viene eseguita una macro del foglio X in qualche modo cerca un "qualcosa" nel file che ho aperto prima.
Un qualcosa di sicuro viene memorizzato se si ricorda che file ho aperto prima, visto che continua a riaprirmelo.
Esiste un modo per cancellare questa sottospecie di memoria all'uscita del file per evitare che si aprano da soli?
di Vecchio Frac data: 08/08/2017 10:07:35
Se apri o crei un file totalmente nuovo, succede sempre e comunque che ti ritrovi aperto l'altro file?
Solo su quella macchina o anche su altre?
I file "si aprono da soli" se sono nella cartella XLSTART oppure se sono componenti aggiuntivi al foglio di lavoro oppure se ci sono dei collegamenti dati che puntano a file remoti oppure se ci sono macro che aprono altri file.
Non trovo che abbia molto senso salvare un file di configurazione ogni volta con un altro nome, e inoltre "contiene dei modelli di varie funzioni" cosa vuol dire? cosa intendi per "modelli" delle funzioni?
di patel data: 08/08/2017 19:19:35
sarebbe già abbastanza difficile capire il problema disponendo del file, figuriamoci senza!
di Tech84 data: 08/08/2017 22:50:39
rispondo un po in ritardo perche volevo portarvi del materiale su cui basare ragionamenti o risposte.
Ho fatto i test indicati
Il problema si presenta su qualsiasi pc in cui i file vengono aperti, locale o in rete che sia.
con un nuovo file (vuoto) non succede, questo problema lo incontro solo se apro solo un file nativo e un'altro rinominato, che una volta chiuso alla prima macro che viene eseguita lo riapre.
La cosa strana che ho trovato è che se guardo le macro mi appare una cosa simile nel nome macro
'Copia di File Nativo - 08/08/2017.xlsm'!Administrator
ricordavo che quando assegnai la macro c'era solo la scritta Administrator di fatti anche la macro si chiama cosi..
Altri collegamenti non ne ho, ne in tabelle, ne in altre celle, ne in collegamenti ipertestuali (che non ho), e non ho macro associati all'apertura di altri file.
La cosa che ho notato è che se apro i file dalla cartella questo problema non si verifica, se invece faccio start excel e apro i file recenti invece si!
Per risolvere a volte chiudo tutti i file excel e riapro solo quelli che mi servono e in questo modo quelli vecchi non si aprono piu da soli.
Purtroppo l'idea del file di configurazione invece mi serve e ha senso.. ovvero inserendo alcuni valori nel file permette alle persone che lo usano di sapere quali valori devono controllare.
(apro il file nativo, setto cio che l'utente deve guardare e lo salvo con un nome per il lavoro assegnato con quei parametri, l'utente lo usa..)
per modelli forse mi sono spiegato male, intendo dei template, schede da compilare o da visualizzare preimpostate che variano a seconda dei settaggi iniziali che io imposto.
di Vecchio Frac data: 09/08/2017 08:30:17
Bene sei stato esauriente, io guarderei anche nella scheda Dati >> Connessioni per vedere se ci sono delle origini dati aperte o in attesa. "Administrator" è solo il nome utente assegnato alla copia di Excel che ha creato il file originale. Se non succede su file nuovi, allora il problema è circoscritto al file originale che apri ogni volta dalla scheda dei files Recenti. Prova ad azzerare la scheda dei file recenti, apri il file dalla cartella, chiudi e riprova a riaprire dai file recenti.
Non volevo discutere l'utilità per te del file di configurazione ogni volta rinominato in modo diverso, ero perplesso sull'idea di una proliferazione di file di configurazione multipli (uno per utente), dove invece magari ti basta solo un file di configurazione suddiviso in sezioni, una per utente (è il concetto del "file di configurazione" che va condiviso). Se hai cinquanta utenti, ti trovi con cinquanta file diversi su disco :)
di scossa data: 10/08/2017 09:39:11
cit. V.F.: "I file "si aprono da soli" se sono nella cartella XLSTART oppure se sono componenti aggiuntivi al foglio di lavoro oppure se ci sono dei collegamenti dati che puntano a file remoti oppure se ci sono macro che aprono altri file."
oppure se in un file si schedula il metodo OnTime e non si provvede a rimuovere la schedulazione prima di chiuderlo
scossa's web site |
Se tu hai una mela, ed io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw) |
di Vecchio Frac data: 10/08/2017 10:35:45
cit. "e non si provvede a rimuovere la schedulazione prima di chiuderlo"
---> Sarei curioso di verificare se accade anche con le API SetTimer e KillTimer, che preferisco rispetto a OnTime. Se ho un attimo faccio la verifica... grazie scossa :)
Vuoi Approfondire?