Condividi:        

Elimina solo le righe con tutti i valori uguali a 0 (Excel)

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Elimina solo le righe con tutti i valori uguali a 0 (Excel)

Postdi Giovanni.Paoletti » 20/05/16 14:43

Buongiorno a tutti,
per lavoro necessiterei di creare una macro in excel per poter eliminare tutte le righe che hanno in ogni colonna dalla 9 alla 120 valori uguali a 0 (quindi salvare quelle righe dove almeno in una colonna dalla 9 alla 120 il valore è uguale o superiore a 0,1).

Mi potreste aiutare?
Vi ringrazio anticipatamente
Giovanni
Giovanni.Paoletti
Newbie
 
Post: 1
Iscritto il: 20/05/16 12:28

Sponsor
 

Re: Elimina solo le righe con tutti i valori uguali a 0 (Exc

Postdi Anthony47 » 21/05/16 17:26

Ciao Giovanni.Paoletti, benvenuto nel forum.
Da quanto scrivi tra parentesi deduco che i valori nelle colonne non sono mai negativi; quindi potrai usare una macro come questa:
Codice: Seleziona tutto
Sub remline()
Dim I As Long, mySh As Long
'
'Crea copia di BackUp:
mySh = ActiveSheet.Index              '**
ActiveSheet.Copy Before:=Sheets(mySh) '**
Sheets(mySh).Select                   '**
'
'Cancella righe "vuote":
For I = ActiveSheet.UsedRange.Rows.Count To 1 Step -1
    If Evaluate("sum(I" & I & ":DP" & I & ")") = 0 Then
        Rows(I).Delete Shift:=xlUp
    End If
Next I
MsgBox ("Completato...")
End Sub

All'inizio, la macro crea una copia del foglio prima di procedere alla sua "lavorazione"; quando hai la certezza che la macro risponde alla tua domanda puoi eliminare le relative istruzioni (quelle marcate **).

Ciao, fai sapere.
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Elimina solo le righe con tutti i valori uguali a 0 (Exc

Postdi astrigno » 30/05/16 09:44

Ciao Anthony, anche a me servirebbe la stessa macro ma su un intervallo diverso (colonna C - colonna H), quindi ho provato a sostituire nella tua macro I con C e DP con H, ma non mi elimina nessuna riga!
Cosa sbaglio?
astrigno
Utente Senior
 
Post: 121
Iscritto il: 17/05/11 10:01
Località: genova

Re: Elimina solo le righe con tutti i valori uguali a 0 (Exc

Postdi Anthony47 » 31/05/16 01:08

Modifica la macro aggiungendo questa riga in questa posizione:
Codice: Seleziona tutto
For I = ActiveSheet.UsedRange.Rows.Count To 1 Step -1
debug.print I, Evaluate("sum(I" & I & ":DP" & I & ")")        '<<< AGGIUNGI
    If Evaluate("sum(I" & I & ":DP" & I & ")") = 0 Then
        Rows(I).Delete Shift:=xlUp
    End If
(Modifica anche le LETTERE nel codice)
Poi a completamento della macro, vai nell'editor delle macro premi Contr-g; la prima colonna indica la riga, la seconda indica il valore colcolato delle sue N colonne; vedi se ti tornano i conti controllando sul tuo layout.
Se non ti tornano allora la cosa piu' semplice e' allegare un file di esempio.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Elimina solo le righe con tutti i valori uguali a 0 (Exc

Postdi astrigno » 31/05/16 07:36

ok grazie, provo e ti so dire
astrigno
Utente Senior
 
Post: 121
Iscritto il: 17/05/11 10:01
Località: genova

Re: Elimina solo le righe con tutti i valori uguali a 0 (Exc

Postdi astrigno » 31/05/16 10:45

No, non funziona, evidentemente sbaglio qlcs.
Purtroppo il file di esempio non te lo posso mandare perché il server aziendale mi blocca l'accesso :-(
Però è molto semplice: ho una tabella con 10 colonne: A...J
Io vorrei solo che quando nelle colonne G-H e J il valore è uguale a zero la riga mi venisse eliminata.
Tutto qui. Grazie
astrigno
Utente Senior
 
Post: 121
Iscritto il: 17/05/11 10:01
Località: genova

Re: Elimina solo le righe con tutti i valori uguali a 0 (Exc

Postdi Anthony47 » 31/05/16 21:55

Anthony ha scritto: Poi a completamento della macro, vai nell'editor delle macro premi Contr-g; la prima colonna indica la riga, la seconda indica il valore calcolato delle sue N colonne; vedi se ti tornano i conti controllando sul tuo layout.

No, non funziona, evidentemente sbaglio qlcs.
Quel codice non risolve nessun problema, ma dovrebbe dare un tot di informazioni per capire di cosa parliamo; hai attivato la "finestra Immediata" del vba (con Contr-g)? che cosa c'era scritto? Quadrava col tuo foglio di lavoro?
Se non riesci a interpretare allora pubblica che cosa leggi nella finestra Immediata e vedremo di interpretarlo insieme. Dovresti anche allegare il testo della macro che usi, per poter comprendere il risultato.

Noto anche che nel primo messaggio parlavi di colonna C - colonna H, ora parli di G-H e J; quale e' la versione giusta?

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "Elimina solo le righe con tutti i valori uguali a 0 (Excel)":


Chi c’è in linea

Visitano il forum: Nessuno e 57 ospiti