Avatar billede Slettet bruger
29. januar 2008 - 22:25 Der er 4 kommentarer og
2 løsninger

Hente data fra 2 tabeller til samme felt i Formular

Kære eksperter :-)

Jeg har en medlemskartotek hvor jeg skal ha et felt til at finde det sidste nummer +1 i en tabel til mænd eller en tabel til damer vis jeg vælger at oprette et nyt medlem. Jeg har en kombinaktionsboks hvor jeg kan vælge om det er en mand eller dame som nyt medlem hvor efter den skal finde det sidste ledige nummer og sætte ind i mit felt.
Avatar billede jesperfjoelner Nybegynder
30. januar 2008 - 01:22 #1
Dit spørgsmål er ikke så godt beskrevet.

Har du mænd og kvinder i forskellige tabeller?
De bør være i samme tabel.

Sidste nummer i en tabel + 1 kan findes ved:

Dmax("[navnpåIDfelt]","navnpådintabel")+1

og i dit formularfelt vil det være:

=Dmax("[navnpåIDfelt]","navnpådintabel")+1
Avatar billede hugopedersen Nybegynder
30. januar 2008 - 07:50 #2
Følgende funktion checker i fldCounter_1 i enten tblMand eller tblKvinde og finder det højeste tal og lægger 1 til.

Public Function fhpNext_Number(bytType As Byte) As Long
' -----------------------------------------------------------------------------------
' Purpose    :
' Parameters :
' Returns    : Long
' Created    : 01-11-07
' Modified  :
' Remarks    :
' -----------------------------------------------------------------------------------
On Error GoTo Error_fhpNext_Number
  Dim lngResult As Long
  Dim rst As New ADODB.Recordset
 
  Select Case bytType
    Case 1
      strSQL = "SELECT fldCounter_1 FROM tblMand ORDER BY fldCounter_1 DESC"
    Case 2
      strSQL = "SELECT fldCounter_1 FROM tblKvinde ORDER BY fldCounter_1 DESC"
  End Select
 
  rst.Open strSQL, CurrentProject.Connection, adOpenStatic, adLockOptimistic
 
  lngResult = Nz(rst!fldCounter_1, 1) + 1
 
  rst.Close
  Set rst = Nothing

Exit_fhpNext_Number:
  fhpNext_Number = lngResult
  Exit Function

Error_fhpNext_Number:
  lngResult = 1
  Select Case Err.Number
    Case 3021
    Case 2501
    Case Is < 0
    Case Else
      MsgBox Err.Number & ": " & Err.Description, vbOKOnly + vbCritical, "Error in procedure 'fhpNext_Number'"
  End Select
  Resume Exit_fhpNext_Number

End Function
Avatar billede hugopedersen Nybegynder
30. januar 2008 - 07:51 #3
Kald fhpNext_Number(1) for mand og fhpNext_Number(2) for kvinde
Avatar billede Slettet bruger
30. januar 2008 - 07:54 #4
Kan du ikke bare lave dit medlemsnr felt autonummereret?~)
Avatar billede Slettet bruger
30. januar 2008 - 17:38 #5
Det kan jeg ikke da jeg skriver medlemmer ind fra 2 bøger som begge starter med nr. 1 og data er tilbage fra 1965
Avatar billede Slettet bruger
01. februar 2008 - 09:51 #6
Lav en forespørgsel der finder max nr for mand og for kvinde. Når du så vælger mand eller kvinde i din dropdown for et nyt medlem, så på afterupdate hændelsen, der ligger du: me.NavnPåDitMedlemsnrFelt = dlookup("[FeltMedMaxMedlemsnr]","NavnForespørgsel","[FeltMedMandKvinde]='" & me.NavnPåDropdown & "'") + 1

Hvis det bliver for kringlet for dig, så lav en kopi af databasen og tøm den for medlemsdata og send den til spg.eksperten@gmail.com så tager jeg et kig på den!~)
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