Avatar billede michael-schou Novice
02. august 2003 - 16:13 Der er 5 kommentarer og
1 løsning

Søgning! HJÆLP!

Jeg har en tabel med følgende

Navn og Mobil nr :

Navn  | Mobilnr
Michael| 22 22 22 22
Peter  | 33 33 33 33

O.S.V.

Jeg vil gerne have at når jeg trykker på min Søgeknap på min form
så kommer der en søgeboks hvor man indtaster navnet på den person man vil find mobilnr på.

Resultatet skal så frem komme i felt1 og Felt2 på min form.

EKS :

Søger på Peter :

Felt1 : Peter
Felt2 : 33 33 33 33

Hvordan gør jeg det? ;)

På forhånd tak

Michael Schoú
Avatar billede mlhave Nybegynder
02. august 2003 - 16:26 #1
Lav en forespørgsel baseret på din tabel og lav en formular på den.
Når formularen er lavet går du ind i dens egenskaber og vælger datakilden.
I datakilden som er lig med din forespørgslsel sætter du navnefeltets navn ind i kriterier f.eks. som [Navn].
For at opdatere formularen efter indskrivning af et navn kan du lave en knap med kommandoknappens guide. Koden kan evt. sættes ind unde hændelsen "Efter opdatering" på feltet Navn i Formularen.
... En lang snak, hvis det ikke lykkes dig så læg din mailadresse så sender jeg et eksempel... ;o)
Avatar billede michael-schou Novice
02. august 2003 - 16:34 #2
Min Email : Michael-Schou@hotmail.com ;)
Avatar billede mlhave Nybegynder
02. august 2003 - 17:00 #3
Min forklaring oven over holder ikke vand... ;o(
Fungerende eksempel sendt til michael-schou
Avatar billede elkrog Nybegynder
02. august 2003 - 17:04 #4
Får vi andre det ikke også at se?
Avatar billede michael-schou Novice
02. august 2003 - 17:24 #5
Jeg har selv fundet svaret ;)

Og her er det :

Tekst0.SetFocus (TekstFelt1)

Dim akDb As Database
Dim NavnTabel As TableDef (Du kan udskifte NavnTabel med dit eget tabel navn)
Dim NavnPostSet As Recordset (Du kan udskifte NavnPostset med dit eget PostSet navn)
Dim Text As String (Teksten i Felt1 som på min form hedder Tekst0)
Dim Text2 As String (Teksten i Felt2 som på min form hedder Tekst2)

Set akDb = CurrentDb() (Her angives databasen du arbejder med)
Set NavnTabel = akDb.TableDefs("Navn") (Her angives Tabellen Navn)
Set NavnPostSet = akDb.OpenRecordset("Navn", dbOpenDynaset) (Navn Tabellen bliver åbnet)

If Tekst0 = "'" Then
Tekst0 = "" (Felt1 sættes til ikke at indeholde noget tekst)
Tekst0.SetFocus (Felt1 får focus)
End If

NavnPostSet.FindFirst ("Navn = '" & Tekst0 & "'") (Her søges der på det navn du skrev i  Tekst0)

Text = Text & NavnPostSet.Fields(0) (Navn felt i tabellen bliver = Text0)
Text2 = Text2 & NavnPostSet.Fields(1) (Mobil felt i tabellen bliver = Text2)

If Tekst0.Text = "" Then (Hvis Felt1 = ingen tekst)
Svar = MsgBox("Angiv et Søgenavn!", vbCritical)
GoTo Slut
End If

If NøglePostSet.NoMatch = True Then (Hvis navnet du søger efter ikke findes)
Svar = MsgBox("Dette Søgenavn : " & Tekst0 & " eksisterer ikke", vbExclamation)
GoTo Slut
End If

Tekst2 = Text2 (Felt2 = Text2 som er mobil feltet i tabellen)


Tekst0.SetFocus

Slut:
Tekst0.SetFocus

Sender gerne eksemplet til dem der gerne vil have det ;)

Min email michael_schou@hotmail.com
Avatar billede mugs Novice
02. august 2003 - 19:47 #6
Eller lidt mere enkelt:

DoCmd.OpenForm "Form2"
Forms!Form2!navn.SetFocus
DoCmd.FindRecord Me!Kombinationsboks1

Det kan naturligvis udbygges men en NoMatch o.s.v.
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