Messaggio di memoria insufficiente - Suggerimenti per Excel

Steven da Australia scrive:

Ho creato una macro VBA che deve creare circa 50 grafici da un foglio di lavoro. Il problema è che ogni volta che eseguo il programma quando arrivo al 33 ° grafico viene visualizzato un messaggio di errore "Memoria insufficiente", quindi il programma Excel si blocca e devo terminare il programma. Ho 256Meg di RAM nel mio PC e sto usando Excel 97 in un sistema operativo Windows NT.

Stai creando ogni grafico come il proprio foglio grafico? Excel può gestire 16 milioni di celle su un foglio di lavoro, ma il segreto è che non può gestire molti fogli di lavoro. Il file della guida dice che il numero di fogli di lavoro è limitato dalla "memoria disponibile".

Vivo regolarmente il problema che hai. È terribilmente frustrante, perché non sai mai quando sta per schiantarsi. Se Visual Basic ti restituisse un errore intercettabile, potresti interrompere la macro, salvare il file, iniziare in un nuovo file. Ma non lo fanno - si verifica solo un incidente.

Ho visto l'arresto anomalo accadere fino a 130 fogli di lavoro e fino a 40. Devi valutare dove si bloccherà nel tuo sistema, quindi inserire un contatore nella macro. Se pensi di andare in crash dopo 32 grafici, interrompi il processo a 30 grafici, salvali in una nuova cartella di lavoro, chiudi quella cartella di lavoro e inizia a crearli di nuovo in una nuova cartella di lavoro.

Non è carino, ma è l'unica soluzione alternativa che ho trovato.

Un altro pensiero: assicurati di chiudere ogni modulo e modulo utente in Visual Basic Editor utilizzando la "X" nell'angolo in alto a destra. Ho scoperto che semplicemente chiudendo tutti i componenti in Visual Basic prima di eseguire la macro, è possibile liberare un po 'più di memoria ed eventualmente spremere qualche altro grafico nella "memoria disponibile".

Sopra, ho parlato di fare cose per conservare la memoria. Steven ha scritto oggi con un'eccellente scoperta:

Ho scoperto che se imposto Charts AutoScaleFont su False, potrei creare circa 120 grafici, il che ha risolto il mio problema.

Perché è così non ne ho idea, ma questo è Excel. Suggerimento eccellente: metti via questo come metodo oscuro per conservare la memoria.

Articoli interessanti...