Gå til innhold

Sjekke for duplikat i VBA Excel 2007


Arcus

Anbefalte innlegg

Hei !

 

Har en kollega som har kjørt seg litt fast.

 

Han holder på å lage en form for telefonliste i Excel 2007 og vba.

 

Utfordringen er som følger.

 

Han har en userform med en tekstboks, det han ønsker er at når det skrives et nummer i textboksen skal det utføres en duplikatsjekk på nummeret som brukeren har skrevet inn, sjekkes mot rangen A2:A400

 

Aller helst skal denne sjekken skje umiddelbart etter brukerne har trykket enter eller tab og gått videre til neste felt i skjemaet, sekundert at sjekken skal utføres når brukeren trykker OK knappen før innlastet info lagres til arbeidsboken.

 

Noen gode forslag på hvordan vi kan prøve å løse dette ?

Lenke til kommentar
Videoannonse
Annonse

Her er et eksempel. Hvis du feltet du skriver i heter TextBox1 og du også har en etikett i skjemaet som heter Label1, da kan du til en hver tid vise hvor mange ganger teksten i TextBox1 finnes blant A2:A200 ved å skrive dette:

 

Private Sub TextBox1_Change()
Me.Label1.Caption = WorksheetFunction.CountIf(Range("a1:a200"), Me.TextBox1.Value)
End Sub

Lenke til kommentar

Det som kompliserer dette forferdelig er alle måter å skrive et telefonnummer. Noen vil Excel oppfatte som tall, mange som tekst, og noen varianter blir avvist. Det er ikke enkelt å finne duplikatene her:

 

987 65 432

0047 987 65 432

+47 987 65 432

98765432

9876 5432

98 76 54 32

+47 98 76 54 32

004798765432

 

Beste hilsen Harald

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...