Avatar billede lars_hoeberg Praktikant
03. august 2004 - 21:48 Der er 11 kommentarer og
1 løsning

Spørg om dubletter skal tillades

Hej.

Jeg skal gerne i en database have databasen til, når der laves en dublet i feltet "adresse", at spørge om denne skal oprettes. Kan dette lade sig gøre? Og kan den evt komme frem og vide den anden post, som er dublet til den oprettede?

Kan dette lade sig gøre? Har deadline i aften nemlig.

Hilsen
Lars
Avatar billede mugs Novice
03. august 2004 - 21:52 #1
Du kan bruge funktionen DCount:

Dim a As String
a = Me.adresse
If DCount("*", "Tabel1", "[adresse] ='a'") > 0 Then
MsgBox "Der er allerede poster med denne værdi."
End If

Udskift "Tabel1" med navnet på den aktuelle tabel.
Koden indsættes i adresse-feltets Beforeupdate.
Avatar billede mugs Novice
03. august 2004 - 21:55 #2
M.h.t at finde posten der matcher med den netop indtasrede adresse, er det lidt mere komplekst. Flg er ikke afprøvet:

Du kan evt. lave en formular (her benævnt "Form2"), og indtaste flg efter din DCount:

DoCmd.OpenForm "Form2"
Forms!Form2!adresse.SetFocus
DoCmd.FindRecord Me!adresse
Avatar billede lars_hoeberg Praktikant
03. august 2004 - 21:58 #3
Hvor sætter jeg den kode ind henne?
Avatar billede mugs Novice
03. august 2004 - 21:59 #4
Koden indsættes i adresse-feltets Beforeupdate.
Avatar billede lars_hoeberg Praktikant
03. august 2004 - 22:00 #5
Må jeg sende databasen til til dig, så du hurtigt kan lave det?
Avatar billede mugs Novice
03. august 2004 - 22:03 #6
Jeg har ikke den fulde kode til at oprette posten. Men prøv at sende som zipi, men det skal være nu.
Avatar billede lars_hoeberg Praktikant
03. august 2004 - 22:04 #7
Hvad er din mail?
Avatar billede lars_hoeberg Praktikant
03. august 2004 - 22:05 #8
Det er i tabellen "deltagere". Eller i formularen "Deltagere", hvor den skal spørge om dubletten skal oprettes.
Avatar billede mugs Novice
03. august 2004 - 22:07 #9
mugs[a]mail.dk
Avatar billede lars_hoeberg Praktikant
03. august 2004 - 22:17 #10
Hvordan står det til?
Avatar billede mugs Novice
03. august 2004 - 23:01 #11
Db modtaget og returneret. Koden kom til at se sådan ud:

Private Sub Kommandoknap74_Click()
If DCount("*", "Deltagere", "[Adresse1]= '" & Me.Adresse1 & "'") > 1 Then
If MsgBox("Vil du oprette posten?", vbYesNo) = vbYes Then
DoCmd.RunCommand acCmdSaveRecord
Else:
Me.Undo
DoCmd.GoToRecord acForm, "Deltagere", acPrevious, 1
Exit Sub
End If
End If
End Sub
Avatar billede mugs Novice
04. august 2004 - 19:26 #12
Tak for point.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester