Velocità cancellazione righe tabella
Hai un problema con Excel? 
Velocità cancellazione righe tabella
di simy88 (utente non iscritto) data: 09/12/2014 10:57:23
Buongiorno a tutti.
Sto sviluppando un programmino VBA che mi permetta, a partire da dati contenuti in fogli Excel, di compilare una relazione di calcolo in Word, andando in pratica a compilare un file modello Word preimpostato e formattato.
Tutto procede correttamente ma ho un problemino. Ho la necessità che, in assenza di alcuni dati nei fogli, vengano cancellate alcune righe delle tabelle in Word per permettere una corretta formattazione automatica dell'intera relazione con un click. La procedura da me scritta funziona correttamente, ma è dannatamente lenta!!! Vi scrivo il banalissimo codice che cancella queste righe.
Si tratta di un'operazione che dura diversi minuti e non coinvolge un numero mostruoso di righe (non riesco a giustificare tale lentezza), mi chiedevo se ci fosse il modo di velocizzarla...
Ringrazio anticipatamente per eventuali risposte!
For i = n_cor + 1 To k
For j = 1 To 233
wordapp.ActiveDocument.Tables(nTab).Rows(c_c - 2).Delete
Next j
Next i |
di Lucas87 data: 09/12/2014 11:18:07
Ciao
I cicli for non utilizzano come riferimento delle operazioni gli indici I e J quindi non hanno senso di esistere.
Inoltre l'operazione viene eseguita 233*(k-n_cor+1) volte...ha senso?
Se ho capito bene compili il foglio word con i dati del foglio excel e poi cancelli le righe che non ti interessano. Credo sia più fattibile trovare un sistema che eviti di riportare in word i valori che non servono. Si risparmia tempo.
di simy88 (utente non iscritto) data: 09/12/2014 11:30:10
Ciao, grazie per la risposta.
Avevo ideato altre procedure più veloci ma che mi danno problemi di formattazione finale del documento.
Mi chiedo ora se sia possibile cancellare direttamente tutte le righe in blocco (in questo caso cancellare le 233 righe) senza compiere dei cilci, è un'operazione che ora mi sfugge
di lepat (utente non iscritto) data: 09/12/2014 12:21:43
potresti usare il registratore di macro per trovare la sintassi corretta per cancellare un blocco di righe
di simy88 (utente non iscritto) data: 09/12/2014 14:29:29
Purtroppo da Excel a Word è una procedura che non so sviluppare, neppure con l'ausilio di una macro
Vuoi Approfondire?