2015-12-18 14 views
8

quindi ho notato che il codice VBA che ho scritto è molto più veloce quando Outlook viene chiuso. Questa non è una cosa sporadica: riesco a eseguire lo stesso codice 10x con Outlook aperto un'esperienza notevolmente più lenta dell'elaborazione ogni volta, quindi chiudere Outlook ed eseguire 10x e sperimentare velocità sempre più veloci ogni volta. Ho anche notato che oltre a Excel "non risponde" mentre il codice è in esecuzione, lo stesso vale per Outlook sporadicamente. So che Outlook è alimentato da Word, quindi avrebbe senso per me se stavo eseguendo il codice in Word. Tuttavia il mio VBA Excel non utilizza in alcun modo Outlook o Word. Quale potrebbe essere la causa di ciò? Excel e Outlook condividono parte dello stesso processo? Ho provato a cercare su Google inutilmente.Perché Excel VBA viene eseguito molto più velocemente quando viene chiuso Outlook?

+1

Cosa sta facendo il codice? Un sacco di gente dell'ufficio ha Outlook aperto tutto il tempo. –

+5

Se è possibile pubblicare il codice effettivo con i tempi, è probabile che alcune persone testino. senza nessuno dei due è difficile fare commenti su questo. –

+4

I miei 2 centesimi sull'inchiesta: se il tuo codice è composto da più sottotitoli, puoi inserire un timestamp quando inserisci e esci da ogni macro e li stampi uno dopo l'altro nella colonna A quando Outlook è aperto. Quindi fai lo stesso nella colonna B quando Outlook è chiuso. Penso che sarete in grado di vedere se i tempi aumentano un po 'ovunque, o in particolare in una parte molto precisa dell'intera procedura. Quindi condividi il risultato del test qui, sarei molto interessato :) –

risposta

2

Ho anche riscontrato questo problema.

Sia Outlook che Excel fanno parte della suite Microsoft Office, quindi ritengo che i ritardi si riducano alla condivisione della memoria tra i programmi della suite MS quando vengono utilizzati.

Quando si esegue una macro, tende a rallentare tutte le operazioni del programma MS suite (nella mia esperienza). L'unica vera soluzione che ho trovato è quella di chiudere i programmi della suite MS prima di eseguire macro di grandi dimensioni, inclusi Word e Outlook. Spero che aiuti.

P.S. Per favore pubblica il tuo codice, potrei essere in grado di aiutarti a velocizzarlo.

Problemi correlati