Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Excel eliminare numeri ripetuti

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

Excel eliminare numeri ripetuti

Postdi Statix » 23/09/09 22:07

Ciao a tutti,
dovrei eliminare in una tabella i numeri ripetuti ,senza formattazione condizionale.
Prima
Immagine
Dopo
Immagine
Statix
Windows 7,
Office 2010,
Statix
Utente Senior
 
Post: 1078
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Sponsor
 

Re: Excel eliminare numeri ripetuti

Postdi Flash30005 » 24/09/09 05:54

prova questa macro
Codice: Seleziona tutto
Sub DelNumRipet()
UR = Worksheets("Foglio1").Range("Z" & Rows.Count).End(xlUp).Row
UC = Worksheets("Foglio1").Cells(UR, Columns.Count).End(xlToLeft).Column
For CR = UR To 2 Step -1
    For CC = 26 To UC
        Num1 = Cells(CR, CC).Value
        For CR2 = CR - 1 To 1 Step -1
            For CC2 = 26 To UC
                Num2 = Cells(CR2, CC2).Value
                If Num1 = Num2 Then Cells(CR2, CC2).Value = ""
            Next CC2
        Next CR2
    Next CC
Next CR
End Sub

Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Excel eliminare numeri ripetuti

Postdi Statix » 24/09/09 08:41

Ciao Flash3005,
ho provato la macro è tutto ok.
Però ho un problema ,nella fretta di scrivere il post,mi sono dimenticato di dire che la destinazione della
tabella senza numeri ripetuti va in un altro range B20:U23,visivamente devo avere entrambe le tabelle.
Statix
Windows 7,
Office 2010,
Statix
Utente Senior
 
Post: 1078
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Re: Excel eliminare numeri ripetuti

Postdi Flash30005 » 24/09/09 09:31

Codice: Seleziona tutto
Sub DelNumRipet()
UR = Worksheets("Foglio1").Range("Z" & Rows.Count).End(xlUp).Row
UC = Worksheets("Foglio1").Cells(UR, Columns.Count).End(xlToLeft).Column
For CR = 1 To UR
    For CC = 26 To UC
        Num1 = Cells(CR, CC).Value
        Cells(CR + 20, CC - 23).Value = Num1
    Next CC
Next CR
For CR = UR To 2 Step -1
    For CC = 26 To UC
        Num1 = Cells(CR + 20, CC - 23).Value
        For CR2 = CR - 1 To 1 Step -1
            For CC2 = 26 To UC
                Num2 = Cells(CR2 + 20, CC2 - 23).Value
                If Num1 = Num2 Then Cells(CR2 + 20, CC2 - 23).Value = ""
            Next CC2
        Next CR2
    Next CC
Next CR
End Sub


Nell'immagine si vedono le colonne Z - AS con i dati ma non si vedono i nueri riga
La macro eseguirà il processo dall'ultima riga fino alla riga 1, se hai righe superiori che non devono essere processate è necessario limitare il range della variabile CR.

Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Excel eliminare numeri ripetuti

Postdi Statix » 24/09/09 10:39

Ok la macro funziona bene,ma ho notato che se nella stessa riga ho 2 numeri uguali non me lo cancella,
si potrebbe anche sorvolare in quanto ogni riga ha numeri diversi.
per quanto riguarda il range di partenza Z1:AS3 sono solo 3 righe.

al momento non sono riuscito a capire bene cosa modificare nella macro.
Statix
Windows 7,
Office 2010,
Statix
Utente Senior
 
Post: 1078
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Re: Excel eliminare numeri ripetuti

Postdi Flash30005 » 24/09/09 11:49

Statix ha scritto:...ho notato che se nella stessa riga ho 2 numeri uguali non me lo cancella

Infatti, guardando il tuo esempio, ho pensato ad una estrazione e quindi non si verificano due numeri uguali altrimenti avresti dovuto cancellare qualche numero anche tu nella riga3.
La macro, così ideata non cancella numeri sulla riga presa come riferimento, ma inizia a confrontare la riga3 con la riga2 e cancella i numri uguali sulla 2 poi (preso ancora come campione la riga3) controlla la riga1, e infine prende come campione la riga2 e la confronta con la 1, cancellando in quest'ultima i numeri uguali.
Statix ha scritto:al momento non sono riuscito a capire bene cosa modificare nella macro

e cosa vorresti modificare? Non va bene?

Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Excel eliminare numeri ripetuti

Postdi Statix » 24/09/09 11:59

Nell'immagine si vedono le colonne Z - AS con i dati ma non si vedono i nueri riga
La macro eseguirà il processo dall'ultima riga fino alla riga 1, se hai righe superiori che non devono essere processate è necessario limitare il range della variabile CR.


mi riferivo a questo,
anche perche la macro mi pare che lavori su più righe.
Statix
Windows 7,
Office 2010,
Statix
Utente Senior
 
Post: 1078
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Re: Excel eliminare numeri ripetuti

Postdi Flash30005 » 24/09/09 12:46

Si, la macro conta le righe
con il codice
Codice: Seleziona tutto
UR = Worksheets("Foglio1").Range("Z" & Rows.Count).End(xlUp).Row

e le colonne con
Codice: Seleziona tutto
UC = Worksheets("Foglio1").Cells(UR, Columns.Count).End(xlToLeft).Column

se hai sempre e solo 3 righe e sempre e solo 20 colonne ma partendo dalla 26ª (Z)
senza voler mdoficare le variabili all'interno della macro, metterai
UR = 3
UC = 45
------------------------------
oppure
Codice: Seleziona tutto
For CR = 1 To UR

con
Codice: Seleziona tutto
For CR = 1 To 3

e
Codice: Seleziona tutto
For CC = 26 To UC

con
Codice: Seleziona tutto
For CC = 26 To 45

Cancellando le righe UR=... e UC=....

Come vuoi tu

ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Excel eliminare numeri ripetuti

Postdi Statix » 24/09/09 14:09

Ciao Flash3005
tutto ok modificando
UR=3
UC=45
va decisamente più veloce (istantaneo)
mentre prima impiegava un pò di tempo in più come se lavorasse a vuoto.
Ti ringrazio per la spiegazione della macro,così ho imparato qualcosina in più per eventuali modifiche.
grazie.
Statix
Windows 7,
Office 2010,
Statix
Utente Senior
 
Post: 1078
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Re: Excel eliminare numeri ripetuti

Postdi Statix » 25/09/09 23:54

Ciao Flash3005,
ho un problema con la macro,va molto lenta,all'inizio l'avevo provata con un computer 650MHz Win Xp 256MB ram
andava istantanea,adesso con un altro computer 3000Mhz windows 7 1Gb ram ci mette 8/10 secondi,
domani mattina la riprovo sul vecchio computer.mi sembra molto strano.
Codice: Seleziona tutto
Sub DelNumRipet()
Sheets("Ritardi").Select
Range("E8:X10").Select
    Selection.ClearContents
    If Range("D7").Value > Range("BY4").Value Then Exit Sub
   
   
For CR = 1 To 3
    For CC = 78 To 97
        Num1 = Cells(CR, CC).Value
        Cells(CR + 7, CC - 73).Value = Num1
    Next CC
Next CR
For CR = 3 To 2 Step -1
    For CC = 78 To 97
        Num1 = Cells(CR + 7, CC - 73).Value
        For CR2 = CR - 1 To 1 Step -1
            For CC2 = 78 To 97
                Num2 = Cells(CR2 + 7, CC2 - 73).Value
                If Num1 = Num2 Then Cells(CR2 + 7, CC2 - 73).Value = ""
            Next CC2
        Next CR2
    Next CC
Next CR
 Range("A1").Select
End Sub
Statix
Windows 7,
Office 2010,
Statix
Utente Senior
 
Post: 1078
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Re: Excel eliminare numeri ripetuti

Postdi Statix » 26/09/09 10:43

Stamattina ho riprovato di nuovo su entrambi i computer,alla fine ho scoperto che era la formattazione condizionale
applicata al range di destinazione,infatti eliminandola ,va molto più veloce.
Ma la cosa strana è,credo ,che dipenda anche dalla macro che crea qualche problema invisibile,
perchè su altri programmi anche applicando più formattazioni condizionali i programmi vanno veloci.
chiedo agli esperti ,come è possibile.
Statix
Windows 7,
Office 2010,
Statix
Utente Senior
 
Post: 1078
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta

Re: Excel eliminare numeri ripetuti

Postdi Statix » 26/09/09 13:12

Ciao a tutti,
nel frattempo ho risolto tutto eliminando la formattazione condizionale,
applicando una macro che mi evidenzia i numeri con colore e una funzione per contare le celle colorate.
Statix
Windows 7,
Office 2010,
Statix
Utente Senior
 
Post: 1078
Iscritto il: 12/05/06 21:55
Località: Provincia di Caserta


Torna a Applicazioni Office Windows


Topic correlati a "Excel eliminare numeri ripetuti":


Chi c’è in linea

Visitano il forum: PcBase e 5 ospiti