Newsgroup: it.comp.software.database
Titolo: Data Base su Excel

Ho circa 7000 indirizzi email su una pagina di Excel
Alcuni sono doppi
Qualche persona gentile conosce un metodo per individuare i doppi senza
rovinarsi gli occhi cercando riga per riga?
Ho molti programmi. Se è più facile posso trasferire il DB su altro e
verificare.
Grazie davvero
ciao
Max

 rovinarsi gli occhi cercando riga per riga?
Non lavoro su excel, comunque se non vuoi travasare su un db,
come soluzione immediata, per cercarli "a vista", di direi di
ordinare alfabeticamente, e nella colonna accanto scrivere
una formula che confronti con la cella superiore, qualcosa
del tipo
  if ( cellacorrente == cellasuperiore ) scrivi "DOPPIONE" 
Bye
	gpb
-- 
http://gpbizzaro.supereva.it/index.html


Occorre una routine che
confronti ciascun cognome con l'intero intervallo dei cognomi segnalando a
video eventualmente la posizione nello stile A1. Se sei interessato indica
con un semplice esempio (come č strutturata la tabello, in quale colonna
occorre fare la ricerca), poi vediamo il da farsi
Saluti da Picchio
--------------------------------
Inviato via 
http://usenet.iol.it
 

 con un semplice esempio (come è strutturata la tabello, in quale colonna


ecc.
L'esempio fornito intanto non era nelle mie
previsioni: nella cella trovo ad esempio "
gius...@pinco.it
" oppure
"
giusep...@pinco.it
"? intendendo greco il cognome di giuseppe. La
differenza è sostanziale. Se "
gius...@pinco.it
" è un cognome allora si può
ma se è seguito dal nome, come presumo, allora il compito diventa più
arduo.
Fammi sapere con un esempio lampante (la colonna è A,B,C )?
ovviamente non calpestando la privacy. Saluti Picchio


Si parla della colonna "A" del foglio di Excel
In ogni cella c'è solo l'indirizzo mail
Questi sono esempi reali (ma errati) dove ho aggiunto un doppione:
 
alpas...@alinet.it
 
alpla...@galactica.it
 
al...@tin.it
 
alr...@tin.it
 
alt...@negroni.it
 
alt...@tin.it
 
al...@tino.it
 
am...@mv.itline.it
 
amm_...@ntt.it
 
amm_...@ntt.it
 
amm_...@w5.customer.bnl.it
Ri-grazie
Ciao
Max

Aggiungo che forse mi sono spiegato male:
per "dopione" intendo dire che è perfettamente uguale, ovvero che se cambia
anche solo una lettera, non è un doppione


wrote:

Seleziona il foglio interessato e dopo aver ordinato alfabeticamente
gli indirizzi, prova cosi'
Sub TrovaDuplicati()
Dim r As Object
Dim n As Long
Dim myRange As String
myRange = "A1:A8000"
Set r = Range(myRange)
For n = 1 To r.Rows.Count
If r.Cells(n, 1) = r.Cells(n + 1, 1) And r.Cells(n + 1, 1) <> "" Then
MsgBox "Duplicate data in " & r.Cells(n + 1, 1).Address
End If
Next n
End Sub
La macro ti segnala le celle con i duplicati, poi dovrai essere tu ad
eliminarli. Ho supposto che gli indirizzi siano nell'intervallo
A1:A8000. Puoi cambiarlo ovviamente.
-- 
ing. Franco Varoli
fva...@tin.it
fva...@libero.it

Anzitutto grazie davvero, perchč funziona!
Questo mi evidenzia un messaggio che mi dice che nella casella "xy" c'č un
"doppione", io confermo e poi mi compare il messaggio del "doppione"
successivo e cosě via per altre 2 o 300 volte.
Domanda:
posso dare un comando che la cella segnalata cambi colore? o che cambi
testo? o che scompaia? o altro ?
In questo modo il lavoro sarebbe perfetto!
Chiaramente a me serve una sola funzione delle opzioni segnalate.
 Rinnovo i ringraziamenti e ti saluto
Max
CUT


Max
Questa macro oltre a darti il messaggio, ti rende il testo in
grassetto, ti cancella il contenuto della cella e ti cancella la riga.
Scegli tu la o le opzioni da tenere e cancella le istruzioni che non
ti interessano. Lavora sul Foglio1. Se il foglio non e' quello
modificalo nella quartultima riga. Attento alla fine di alcune righe:
dopo i due punti c'e' uno spazio e il carattere di sottolineatura.
Meglio se fai un copia e incolla.
Sub TrovaDuplicati()
Dim r As Object
Dim n As Long
Dim myRange As String
myRange = "A1:A8000"
Set r = Range(myRange)
For n = 1 To r.Rows.Count
If r.Cells(n, 1) = r.Cells(n + 1, 1) And r.Cells(n + 1, 1) <> "" Then
_
MsgBox "Duplicate data in " & r.Cells(n + 1, 1).Address: _
r.Cells(n + 1, 1).Font.Bold = True: _
r.Cells(n + 1, 1).ClearContents: _
Worksheets("Foglio1").Rows(n + 1).Delete: _
n = n - 1
Next n
End Sub
Saluti.


 ha scritto nel messaggio
news:a4jo47$qabc$1...@ID-115573.news.dfncis.de...
