22. december 2009 - 19:15Der er
7 kommentarer og 1 løsning
Opdater en form fra en Combo Box
Jeg har før spurgt om dette men omdefiner spørgsmålet:
På en form ligger: Forms![Produkt]![FirmaId] FirmaId skal opdateres fra en Combo box Her finder jeg FirmaId således:
Private Sub FirmaNavn_Boks_AfterUpdate() Dim rs As Object Set rs = Me.Recordset.Clone rs.FindFirst "[FirmaId] = " & Str(Nz(Me![FirmaNavn_Boks], 0)) If Not rs.EOF Then Me.Bookmark = rs.Bookmark Me.Refresh End Sub
Hvordan får jeg den valgte FirmaId over på formens FirmaId således at formens tabel FirmaData opdateres.
Hvis du mener det er en ny record, er det ikke nok men en refresh, der skal en Requery til. Refresh opdaterer ku eksisterende poster.
Men hvis det er en ny post der ikke findes i tabellen, og du indtaster denne i din combo, kan du bruge combo'ens NotInList hændelse således:
Private Sub felt1_NotInList(NewData As String, Response As Integer) DoCmd.SetWarnings False Response = acDataErrContinue prompt = "Denne type findes ikke i listen, ønsker du at oprette den?" If MsgBox(prompt, vbYesNo, "Typen findes ikke!") = vbYes Then DoCmd.RunSQL "INSERT into TABELNAVN (FELTNAVN) VALUES ('" & NewData & "')" Response = acDataErrAdded End If DoCmd.SetWarnings True End Sub
Jeg har to tabeller med FirmaId som nøgle. Den ene med firmanavne, den ligger i combo Boxen, og den anden ligger på formen med Firmadata. Jeg indtaster intet. Jeg vælger blot firmanavn fra combo boxen og ønsker så formens firmadata vist
Jeg har mange gange fået en bruger til at konvertere en 2007 db til en tidligere version. En sådan funktion må altså være til stede i 2007, men hvor ved jeg af gode grunde ikke.
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.