Avatar billede dl Nybegynder
21. november 2004 - 19:46 Der er 23 kommentarer og
1 løsning

indsæt data i combobox

jeg har en combobox på min formular.

Jeg skal via et tryk på en knap indsætte en item i comboboxen, hvordan gøres det ?

//dl
21. november 2004 - 19:49 #1
Normalt er kombobokse (i Access) bundet til en tabel eller forespørgsel.

Mn kan dog også angive "Rækkekildetype" til at være en "Værdiliste".

Derved kan du tilføje elementer ved at skrive:

Me!Comboboks.Rowsource = Me!Comboboks.Rowsource & ";" & NyVærdi


Hvis du benytter en tabel/forespørgsel som rækkekilde, skal du i stedet tilføje værdien til tabellen og Opdatere komboboksen med
Me!Comboboks.requery
Avatar billede mugs Novice
21. november 2004 - 19:49 #2
Du behøver ingen knap. Du kan benytte hændelsen VedIkkepåListe (NotInList) og indsætte denne:

Dim prompt As String
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 Register (feltnavn) VALUES ('" & NewData & "')"
Response = acDataErrAdded
End If
DoCmd.SetWarnings True
21. november 2004 - 19:50 #3
dl, har du kigget på dit andet spm tidligere: http://www.eksperten.dk/spm/563602
Avatar billede mugs Novice
21. november 2004 - 19:51 #4
Hvis du indtaster en værdi i comboen, der ikke eksisterer ti tabellen / forspørgslen, vil du blive promptet for, om du vil indsætte værdien.

Egenskbnen BegrænsTilListe skal væresat til "Ja".
Avatar billede dl Nybegynder
21. november 2004 - 19:55 #5
BegrænsTilListe:  da får jeg nogle fejl,... men jeg skal bare bruge en eller 2 linje, code, for at indsætte noget tekst i en combobox, skal indsættes så man kan vælge det  via den lille pil.
21. november 2004 - 19:58 #6
Hvordan er din rækkekildetype angivet? Som tabel/forespørgsel eller som værdiliste?
Avatar billede dl Nybegynder
21. november 2004 - 20:16 #7
tabel/forespørgsel  er det forkert ... skal det være værdiliste
Avatar billede dl Nybegynder
21. november 2004 - 20:18 #8
Min combobox er sat til at indsætte en værdi i en database.
men jeg skal selv styre de værdi der er i combobox, da det skal være fra en anden tabel, men i alle værdier fra den tabel skal med.

Håber i forstår.
21. november 2004 - 21:06 #9
Hvis du allerede har alle værdier i en tabel/forespørgsel, så er det nemmest sådan.

Og i så fald kan du indsætte en post i denne tabel vha disse sætninger:

docmd.Setwarnings false
docmd.RunSQL "Insert into [Din tabel] (Felt1)) Select '" & NyVærdi & "'"
docmd.Setwarnings true

Denne syntaks gælder, hvis værdien er tekst og hvis der kun skal indsættes ét felt i tabellen.
21. november 2004 - 21:07 #10
Glæmte lige at opdatere komboboksen:

docmd.Setwarnings false
docmd.RunSQL "Insert into [Din tabel] (Felt1)) Select '" & NyVærdi & "'"
docmd.Setwarnings true
ME!Comboboks.Requery
21. november 2004 - 21:08 #11
Hvem fa'en staver Glemte med "Æ"???? ;)
Avatar billede mugs Novice
21. november 2004 - 21:11 #12
You do :o)
21. november 2004 - 21:15 #13
åbenbart!! Aner ikke hvor den kom fra....!??

Måske fra den film, jeg sidder og ser!?
Avatar billede mugs Novice
21. november 2004 - 21:18 #14
Ansvarsforflygtigelse!!!
21. november 2004 - 21:31 #15
Nej da. Men du kan da godt få den 'rigtige' forklaring:

Fejlen skyldes helt og aldeles, at min dansklærer i folkeskolen aldrig lærte os at stave korrekt, at jeg var syg den ene dag, hvor vi lærte at stave til "glemte", at mine forældre ikke stimulerede mig nok intellektuelt som barn samt at jeg stadig lider af granatchok efter min deltagelse i Irak-krigen.
Avatar billede mugs Novice
21. november 2004 - 21:37 #16
Hmmm - Jeg føler med dig.
Skyd dansklæreren fordi denne ikke repeterede stavemåden. Dit interlektuelle stade giver jeg heller ikke særlig meget for, idet du prøver at skyde skylden fra dig. Granatchoket tyder på behov for psykologhjælp.
21. november 2004 - 21:45 #17
Ups, står det så sløjt til?

Så er det godt, at man hverken behøver at kunne stave, være intelligent eller psykisk stabil for at være systemkonsulent/-udvikler ;o)
Avatar billede mugs Novice
21. november 2004 - 21:50 #18
OK - Du er heldig stillet, idet dit job tilsyneladende ikke kræver noget særligt. Men inden vi bliver anmeldt for spam, må vi hellere slutte denne tråd. Så vil jeg vende tilbage til min 600 sider's Tom Clancy: Kodenavn "Red Rabbit".

Tak for iaften ;o)
21. november 2004 - 21:56 #19
God idé.

Måske DL er kommet lidt videre?
Avatar billede dl Nybegynder
21. november 2004 - 22:03 #20
thomasjepsen >> det kan godt være det er mig der roder rundt i det.

men jeg skal ikke ligge ind i en tabel.
Jeg skal ligge en tekst ind i en combobox. Denne combobox er IKKE bundet til noget, hvorden få data fra, det skal jeg selv lave.
21. november 2004 - 22:11 #21
ok, så skal du angive "Rækkekildetype" til værdiliste.

Herefter kan du manuelt angive værdierne adskilt med semikolon i Rækkekilde.

For at tilføje ét element vha VBA, skal du bruge mit første eksempel:

Me!Comboboks.Rowsource = Me!Comboboks.Rowsource & ";" & NyVærdi
Avatar billede dl Nybegynder
21. november 2004 - 23:17 #22
thomasjepsen >> tak
21. november 2004 - 23:24 #23
Selv tak !

Jeg håber, at du fik det til at lykkedes?
Avatar billede dl Nybegynder
21. november 2004 - 23:28 #24
nej, faktisk ikke ...
jeg er newbie i access 2000 ... og det er en større sag for mig til jeg vil lave ... men ikke så svær ... jeg kunne lave det i delphi men har store problemmer med det i access.

og jeg vil have det som VB kode bagved ... jeg hader alt det man kan sætte op i access men som ikke altid virker.

men jeg vil oprette en sp omkring det hele. så kan du jo måske hjælpe med.

//dl
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