Avatar billede jonbdk Nybegynder
17. juli 2003 - 12:03 Der er 4 kommentarer og
2 løsninger

Kun forespørgsel ikke opdaterings formular

Hej

Jeg er totalt rookie i det her.
Jeg har lavet min 1. formular. Et combofelt henter telefonnumre i databasen.
Nå et nummer vælges, udfylder jeg resten af felterne med øvrige data om brugeren:
Private Sub KundeTelefon_Change()
Kundenavn = DLookup("[Kunder.KundeNavn]", "Kunder", "[kunder.kundetelefon] = '" & KundeTelefon & "'")
Kundeadresse = DLookup("[Kunder.Kundeadresse]", "Kunder", "[kunder.kundetelefon] = '" & KundeTelefon & "'")
Kundepostnummer = DLookup("[Kunder.Kundepostnummer]", "Kunder", "[kunder.kundetelefon] = '" & KundeTelefon & "'")
Kundeby = DLookup("[Kunder.kundeby]", "Kunder", "[kunder.kundetelefon] = '" & KundeTelefon & "'")
KundeKontakt = DLookup("[Kunder.Kundekontakt]", "Kunder", "[kunder.kundetelefon] = '" & KundeTelefon & "'")
Kundeemail = DLookup("[Kunder.Kundeemail]", "Kunder", "[kunder.kundetelefon] = '" & KundeTelefon & "'")
End Sub
Men når jeg bruger formen som skal være et opslagsværk, opdateret den min kunde i databasen, så ved at have en kunde fremme og vælge en anden, overskriver jeg kunden.
Hvordan laver jeg den om, så det kun er en forespørgsel?
Avatar billede terry Ekspert
17. juli 2003 - 12:13 #1
make a form using the form wizard. Choose the Kunder table for the form.

Now you should have a form where you can enter NEW data and update existing. The fields should be in the detail section of the form.

Now add a combo box to the header section of the form, again use the wizard. You should be able to choose from three radio butons, the bottom one "Find a record on my form ....."
Choose this and follow the instructions. You can now use this combo to find a specific record WITHOUT changing the data of existing records :o)
Avatar billede jonbdk Nybegynder
17. juli 2003 - 12:20 #2
Det giver mig så funktionen:
Private Sub Kombinationsboks14_AfterUpdate()
    ' Søg efter den post, der svarer til kontrolelementet.
    Dim rs As Object

    Set rs = Me.Recordset.Clone
    rs.FindFirst "[Id] = " & Str(Nz(Me![Kombinationsboks14], 0))
    If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub
Hvordan hår jeg så ex. kundenavn ud af rs?
Avatar billede overchord Nybegynder
17. juli 2003 - 12:46 #3
Siden formen kun skal bruges til opslag skal du bare aabne formen i read-only mode. Det kan du goere via koden Docmd.openform "formnavn", acreadonly
Avatar billede jonbdk Nybegynder
17. juli 2003 - 12:57 #4
Tak for hjælpen - nu virker det :)
Avatar billede overchord Nybegynder
17. juli 2003 - 13:22 #5
Hvad blev loesningen? Bare lidt nysgerrig, og det er godt at have loesningen som reference hvis andre skulle komme med samme spoergsmaal.
Avatar billede jonbdk Nybegynder
17. juli 2003 - 13:53 #6
Jeg fulgte præcis terrys vejledning og smed alt det væk jeg havde - fungerer meget smartere.
Har ikke endnu brugt dit foreslag, men det lyder rigtig smart - og kunne godt forestille mig at det skulle bruges når løsningen skal gives til BRUGERNE :(
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