L’editor VBA elimina automaticamente gli spazi alle estremità delle linee

C’è un modo per convincere l’editor VBA in Excel per fermare le linee di formattazione automatica per rimuovere lo spazio alla fine quando metto in pausa la mia battitura per un quarto di secondo?

C’è un modo per distriggersre la “correzione automatica” nell’editor VBA.

Menu Tools -> Options -> Scheda Editor -> deseleziona la casella di Auto Syntax Check

Purtroppo, questo non risolverà tutti i tuoi problemi, poiché l’editor VBA tende ad avere una mente propria, nel bene e nel male.

Ho avuto questo problema esatto e il seguente ha funzionato per me.

  1. Fare clic sul pulsante Microsoft Office e quindi fare clic su Opzioni di Excel
  2. Fare clic sulla categoria Componenti aggiuntivi
  3. Nella casella Gestisci, fare clic su Componenti aggiuntivi COM e quindi fare clic su Vai.
  4. Cerca un add in “Load Test Report AddIn”, quindi deselezionalo
  5. riavviare Excel

Questo addin è installato con VS2010 Beta2

In Excel 2010, l’triggerszione / distriggerszione del pulsante Modalità progettazione nella scheda Ribbon dello sviluppatore risolve il problema.

Ho già avuto questo problema in precedenza, in cui l’editor di vba si sarebbe formattato mentre stavo scrivendo (non solo quando sono passato a un’altra linea). Per me, sembrava essere correlato a un controllo di Microsoft Web Browser che avevo in una cartella di lavoro aperta. Quando ho estratto il browser Web, l’editor VBA ha iniziato ad agire normalmente di nuovo. Non ho idea del perché abbia funzionato, ma è successo. Ora evito di usare quel controllo nelle mie cartelle di lavoro.

Qualcosa sta causando il ricalcolo del foglio di calcolo mentre sei nell’editor VBA e questo “compila” il tuo codice e quindi elimina gli spazi. È necessario interrompere il ricalcolo delle celle durante la modifica. Trasformando il calcolo in manuale nel foglio di calcolo. Strumenti> Opzioni> Calcolo dovrebbe fare il trucco.

L’ho notato quando ho ricalcolato le celle grazie a una connessione DDE.

Ho avuto questo stesso problema diverse volte di recente e mi ha fatto impazzire.

Dopo aver letto questo post tutte le diverse correzioni menzionate (nessuno ha funzionato per me), ho ricordato che ho giocato ultimamente con Internet Explorer Control, aprendo Internet Explorer da VBA.

Questo è menzionato in alcune delle risposte in questo post.

Questo mi ha portato sulla strada giusta e, per risolverlo, ho dovuto prima cancellare tutte le istanze di iexplore.exe (alt + control + cancella), Excel chiuso e riaprire excel. (Iexplore.exe era stato aperto invisibile dal codice VBA e non sapevo che fossero in esecuzione)

Questo ha risolto il bug.

Ho programmato abbastanza pesantemente con VBA per oltre 4 anni, e non ho mai avuto questo problema.

Solo un paio di settimane fa ho iniziato a utilizzare il controllo IE e ho iniziato ad avere questo problema … quindi nel mio caso posso solo presumere che il bug sia direttamente correlato al controllo IE.

Sto eseguendo contemporaneamente sia Excel 2003 che 2007 nello stesso PC e il problema si verifica solo con Excel 2007.

Nessuna delle precedenti per me. Ho avuto un timer Application.OnTime che ha sparato ogni secondo e questo ha innescato un ricalcolo di qualcosa: commentarlo ha reso la mia giornata.

Questo ha iniziato a succedermi di recente dopo aver aggiunto un evento Timer a un modulo Access 2007. L’editor VB “finalizza” la riga corrente (come se avessi spostato il cursore fuori dall’istruzione, ho il controllo automatico della syntax) ogni volta che l’evento si triggers (inizialmente l’ho impostato su 1 secondo, ora è impostato su 5 secondi e il comportamento si adatta di conseguenza). Affinché il codice evento possa essere eseguito, l’applicazione deve assicurarsi che sia stata compilata. Presumibilmente, l’editor deve essere in uno stato “sano” per farlo, poiché probabilmente deve verificare la presenza di dipendenze tra i moduli. Si noti che il comportamento si verifica indipendentemente dal fatto che un qualsiasi codice dipendente sia effettivamente caricato nell’editor in quel momento. Si noti inoltre che il ripristino dello stato di esecuzione non influisce sull’triggerszione dell’evento del timer. A livello pratico, è ansible chiudere il modulo di triggerszione, passare alla vista Progettazione, impostare un punto di interruzione nel codice triggersto o aumentare l’intervallo del timer mentre si lavora con l’editor.

A differenza del commento di abhishek, la modifica delle impostazioni di Strumenti / Opzioni … / Generale / Compile su richiesta e / o Compilazione di sfondo non ha influito sul problema.

Se aiuta, nessuna delle risposte precedenti ha risolto il mio. L’unica soluzione sembrava essere quella di chiudere il file xls e riaprirlo. Frustrante dover fare ogni 30 minuti ma almeno funziona. Mi piacerebbe sapere perché sta ricompilando e pulendo il testo … dovrebbe davvero essere un’opzione per disabilitare la pulizia del testo ma non riuscire a trovarlo.

Toglierlo dalla modalità di progettazione lo corregge ogni volta su vba2003 – mi stava facendo impazzire in un primo momento … ho notato che potrebbe avere qualcosa a che fare con il controllo web, ma quando lo tolgo dalla modalità di progettazione funziona perfettamente. .. basta triggersre quello per farlo comportarsi 🙂

Ho riscontrato questo problema oggi su una nuova installazione di Excel 2010 Beta 2. Nessuno dei precedenti ha fatto alcuna differenza, ma entrare nel centro di fiducia e disabilitare tutti i componenti aggiuntivi dell’applicazione ha risolto il problema per me.

Distriggers Tools > Options > General > Background Compile . Questo l’ha risolto per me.

Ho Office 2010 Pro e ho avuto lo stesso problema. Mentre scrivo lo spazio tra ogni parola è stato cancellato. Dopo aver provato ognuna delle opzioni Winzip Courie(excel) add-in e distriggersndole, l’unico modo in cui ho trovato la soluzione era disabilitare il componente Winzip Courie(excel) add-in . Questo viene fatto attraverso la sezione Componenti aggiuntivi della finestra di dialogo Opzioni.

Non penso di aver mai visto il VBE rimuovere uno spazio quando ho smesso di digitare. Rimuoverà gli spazi di tracciamento dalle linee se ti sposti su un’altra linea, ma è qualcosa di diverso e non un comportamento che penso possa essere modificato.

La rimozione di spazi nell’editor VBA per Access si verifica quando un modulo è aperto in modalità Form (“Esegui”). Ciò è probabilmente dovuto alle esecuzioni in background basate sui metodi “On Timer”. Chiudere il modulo in Access risolve il problema in VBA.