Avatar billede domino1977 Nybegynder
05. juli 2002 - 11:19 Der er 7 kommentarer og
1 løsning

Søgning i alle felter!!

Jeg har en access database, som jeg har koblet op i VB 6.0....

Der er ca. 5 felter som jeg kan søge i, MEN jeg vil gerne have det sådan at jeg kan søge i ALLE felter på engang OG så skal den kun søge "delvist", altså den finder "12345678", hvis man kun skriver "45678".....

Og finder den et felter der passer tilsøgning, og det ikke er den man vil ha, skal man kunne fortsætte sin søgning!!

Er der nogen der kan hjælpe med det????
Avatar billede martin_moth Mester
05. juli 2002 - 15:02 #1
Her er lidt:

  Dim strSQL As String
  Dim i As Integer
  Dim DB As Database
  Dim Recs As Recordset
  Dim strSøgestreng as String
 
  strSøgestreng = "blaa"
  Set DB = Workspaces(0).OpenDatabase("c\database.mdb")
  strSQL = "SELECT minRecord FROM minTabel "
  strSQL = strSQL & "WHERE minRecord Like ""*" & strSøgestreng _
                  & "*"" "
 
  'Hent liste af rec navne, med ID's fra databasen
  Set Recs = DB.OpenRecordset(strSQL, dbOpenSnapshot)
 
  'Start loop gennem Recs
  Do While Not recs.EOF
    Msgbox "Der blev fundet følgende: " & recs!Tabel
    recs.MoveNext
  Loop
  recs.Close
  DB.Close
  Set DB = Nothing

Håber den kan bruges - det der er værd er bemærke er linien
  WHERE minRecord Like ""*" & strSøgestreng  & "*"" "
hvor du søger med wildcards - det er det du efterspørger.
Avatar billede martin_moth Mester
05. juli 2002 - 15:05 #2
PS: som du ser kommer Recs til at indeholde alle poster i "minRecord", hvor strSøgestreng er en del af navnet.

minRecord og minTabel er navne defineret i din database, c:\database.mdb

For at være mere pædagogiske skulle strSøgestreng = "4567" og ikke "Blaa" ;o)
Avatar billede domino1977 Nybegynder
05. juli 2002 - 15:09 #3
Ok.... lyder meget fint.... men ææææ.... hvad skal der oprettes og hvor??

Skal der nogle extra felter til?? Og hvor skal den finde kode der sættes ind???
Avatar billede martin_moth Mester
05. juli 2002 - 15:18 #4
"Jeg har en access database, som jeg har koblet op i VB 6.0...."

Der må du da kunne genkende en masse fra ovenstående..?

Men smid koden hvor du vil, f.eks. i en søgeknape _Click-event ;o)
Avatar billede domino1977 Nybegynder
05. juli 2002 - 15:21 #5
Nååårh... ok... jamen jeg vidste jo ikke hvordan du havde forstået mit spørgsmål???

Men ok..... tusind takker.....
Avatar billede martin_moth Mester
05. juli 2002 - 16:34 #6
Håber du fik nok at vide - ellers spørg bare igen :o))
Avatar billede domino1977 Nybegynder
09. juli 2002 - 14:10 #7
Hejsa igen....

Jeg har bakset med din kode... og er ikke kommet meget længere fordi den bliver ved med at gå istå ved denne linie:

Set Recs = DB.OpenRecordset(strSQL, dbOpenSnapshot)

Hvorfor gør den det??
Avatar billede martin_moth Mester
09. juli 2002 - 20:52 #8
Hvad er fejlmeddelsen ??
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
Kurser inden for grundlæggende programmering

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