I Access2000 har jeg lavet en musikdatabase, hvor jeg har en tabel med kunstnere, og en anden hvor jeg har oplysninger om CD'en.
I en formular har jeg så oplysningerne om CD'en, og i en Combo Box henter jeg så kunstnernavn fra kunstner tabellen.
Hvis jeg så støder på en kunstner som jeg ikke har, kan jeg trykke på en knap, som åbner en ny formular, hvor jeg kan oprette den nye kunstner. Og når jeg som kommer tilbage til den den første formular, så er Combo Boxen ikke opdateret, før jeg har lukket den, og jeg kan ikke få lov til at lukke den, før jeg har udfyldt kunstner feltet, selvom det står som et felt der ikke er nødvendigt.
Jeg går ud fra, at du bruger VBA til funktionaliteten i din database.
Når du vender tilbage fra den formular, hvor du har oprettet den nye kunstner, skal du bruge combo boxens requery funktion. Hvis din combobox hedder cmbKunstner, skal du kalder flg. funktion:
Me!cmbKunstner.Requery, og comboboksen er opdateret.
Et lille tip. Hvis du ønsker at din database automatisk skal spørge om en evt. nu kunstner skal tilføjes, såfremt kunstneren ikke eksisterer i forvejen, skal du bruge comboboksens NotInList event. En af parametrene til denne event er NewData, der indeholder den nye kunstner.
Som ovenfor foretages der en requery umiddelbart efter at din kunstner form er blevet åbnet. Derfor bliver din combo ikke opdateret.
Løsningen er, at åbne din kunstner form som en dialog. Herved suspenderes videre exekvering af kode, indtil du lukker kunstnerformen (med eventuelle rettelser).
Har du rettet i feltet (med et navn, der ikke er i listen) kan du ikke foretage en requery (den fejler). Derfor skal du nulstille feltet, førend du requerier. Check på instillingen me.combo.dirty ( den er true, hvis du har fortaget ændringer i feltet).
Håber dette er nyttigt. Jeg er på ferie og er ikke i nærheden af f.eks. kodeeks.
Nej jeg bruger ikke vba i databasen, jeg har bare lavet en knap i min formular, som åbner formularen kunstner. Og en anden knap, som lukker formularen kunstner igen.
Jeg har meget lidt forstand på vba, så jeg kan godt bruge lidt mere hjælp.
Især det med NotInList event, lyder som noget jeg kan bruge, men jeg kan ikke få det til at virke, man skal in i CodeBuilder, men hvad skal man præcis skrive, for at den så opretter en ny kunstner i tabellen kunstnere.
Jeg kan heller ikke finde ud af SQL, jeg er meget nybegynder, når det drejer sig om koder generelt, derfor har jeg brug for i det midste et eksempel på hvordan selve koden skal se ud.
har du lavet en makro : Requery husk : control navn
ellers er du velkommen til at sende din database til mig : jonasd@hotmail.com
jeg havde samme problem, men løste det uden brug af vba og sql
Mvh jonas
Synes godt om
Ny brugerNybegynder
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.