Fjerne duplikater Basert på en Delvis Match

April 26  by Eliza

Farris har et regneark som inneholder adresser. Noen adresser er svært nær det samme, slik at gateadressen er den samme og bare den suite nummer delen av adresse forskjellig. For eksempel kan en rad har en adresse av "85 Seymour Street, Suite 101" og en annen rad kan ha en adresse til "85 Seymour Street, Suite 412." Farris er lurer på hvordan å fjerne duplikater i listen over adresser basert på en delvis match-basert bare på gateadresse og ignorerer suite nummer.

Den enkleste løsningen er å ytterligere delt adressene i separate kolonner, slik at eget nummer er i sin egen kolonne. Du kan gjøre det ved å følge disse trinnene:

  1. Pass på at det er en blank kolonne til høyre for adressekolonnen.
  2. Merk cellene som inneholder adresser.
  3. Velg Tekst til kolonner fra Data-menyen. Excel starter Konverter tekst Columns veiviseren. (Se figur 1)

    Fjerne duplikater Basert på en Delvis Match

    Figur 1. Konverter tekst kolonner veiviseren.

  4. I det første trinnet i veiviseren, må du kontrollere at Delimited alternativet er valgt, og klikk deretter på Neste.
  5. I det andre trinnet i veiviseren, må du kontrollere at Comma er merket av, og klikk deretter på Neste.
  6. I det tredje trinnet i veiviseren klikker du Fullfør.

Gateadressen skal nå ligge i den opprinnelige kolonnen og den tidligere tomme kolonnen skal nå inneholde alt som var etter komma i de originale adressene. Med andre ord, er pakken nummer i en egen kolonne. Med dine data i denne tilstanden er det en enkel operasjon å bruke filtrering for å vise eller trekke ut de unike gateadresser.

Hvis du ikke ønsker å permanent splitte opp adressene inn i to kolonner, kan du bruke en formel for å finne duplikater. Forutsatt at adresselisten er sortert, kan du bruke en formel som ligner på følgende:

= HVIS (OR (ERFEIL (FIND (",", A3)), ERFEIL (FINN (",", A2))),
"", IF (VENSTRE (A3, FINN (",", A3)) = LEFT (A2, FINN (",", A2)),
"Dupliser", ""))

Denne formel forutsetter at de adresser som skal kontrolleres er i kolonne A, og at denne formelen er plassert et eller annet sted i rad 3 av en annen kolonne. Den først sjekker om det er et komma i enten adresse i den aktuelle raden eller adressen i raden før. Hvis det ikke er komma på en av adressene, da det forutsetter at det ikke er mulig duplikat. Det er et komma i dem begge, sjekker formelen det parti av adressene før komma. Hvis de er like, så ordet "Duplicate" returnert; hvis de ikke stemmer overens, så ingenting er returnert.

Resultatet av å kopiere formelen nedover kolonnen (slik at en formel tilsvarer hver adresse) er at du vil ha ordet "Duplicate" vises ved siden av disse adressene som samsvarer med den første delen av den tidligere adresse. Deretter kan du finne ut hva du vil gjøre med disse duplikater som er funnet.

Et annet alternativ er å bruke en makro for å bestemme mulige duplikater. Det finnes en rekke måter som en makro for å avgjøre duplikater kan bli utviklet; den som vises her sjekker bare de første X tegnene i en "nøkkel" verdi mot en range og returnerer adressen til den første samsvarende celle.

Funksjon NearMatch (vLookupValue, RNG Som Range, iNumChars)
Dim x As Integer
Dim sSub As String

Satt RNG = rng.Columns (1)
sSub = Left (vLookupValue, iNumChars)
For x = 1 Til rng.Cells.Count
Hvis Venstre (rng.Cells (x), iNumChars) = sSub Deretter
NearMatch = rng.Cells (x) .Address
Exit Function
End If
Neste
NearMatch = CVErr (xlErrNA)
End Function

For eksempel, la oss anta at adressene er i området A2: A100. I kolonne B kan du bruke denne NearMatch funksjonen til å returnere adresser til mulige duplikater. I celle B2 skriver du inn følgende formel:

= NearMatch (A2, A3: A $ 100,12)

Den første parameteren for funksjonen (A2) er cellen du ønsker å bruke som "nøkkel". De 12 første tegnene i denne cellen er sammenlignet mot de 12 første tegnene i hver celle i området A3: En $ 100. Hvis en celle blir funnet i det området hvor de 12 første tegnene stemmer overens, så adressen til den cellen returneres av funksjon. Hvis det ikke blir plassert, deretter # N / A feil returneres. Hvis du kopierer formelen i B2 ned, til cellene B3: B100, er hver tilsvarende adresse i kolonne A i forhold til alle adressene under den. Du ender opp med en liste over mulige duplikater i den opprinnelige listen.

ExcelTips er din kilde for kostnadseffektiv Microsoft Excel trening. Dette tipset (2782) gjelder for Microsoft Excel 97, 2000, 2002, og 2003. Du kan finne en versjon av dette tipset for Båndet av Excel (Excel 2007 og senere) her: Fjerne duplikater Basert på en Delvis Match.