27. juli 2009 - 14:58Der er
19 kommentarer og 1 løsning
Visning af flere felter fra sammenkædet tabel i en formular.
Hej,
Jeg har en formular, som har en dropdown liste. I denne dropdownliste er der 5 kolonner (id, overkørselsnummer, kilometrering, stedangivelse, strækning). Når jeg har valgt en given overkørsel, så kan jeg kun se overkørselsnummeret og ikke de resterende 4 værdier.
Hvordan viser man disse tilhørende værdier permanent (også efter at en overkørsel er valgt)? Jeg har prøvet at oprette nogle nye felter og prøvet med DLookUp, samt SQL forespørgsel, men har ikke kunnet få det til at virke.
Har prøvet DLookUp("STEDANGIVE";"Usikrede_overkørsler"; "Overkørsel=" & [Usikrede_overkørsler]![OBJECTID_12] )
dim stringsearch as string stringsearch = Me.Usikrede_overkørsler DLookup("[Gade]", "Tabel2", "[Navn]='" & Stringsearch & "'")
Hvor gade indeholder data og Tabel2 er navnet på den fremmede tabel. Funktionen vil således finde navnet på gaden i tabel2, hvor navnet er = formularens felt Usikrede_overkørsler.
Men syntaksen er fordkellig om der er tale om alfanumeriske eller numeriske felter.
Skal det forstås sådan at du har alle de ønskede felter i din dropdown og når du så har valgt et så vil du vise de ekstra kolonner i nogle ubundne felter? I så fald kan du sætte ControlSource på dem til =cboDinCombo.Column(1) (Column(0) er første) Du kan hente alle de ønskede kolonner ind på din combo og bare sætte dem til 0 i bredde så de ikke bliver vist.
Du undgår alt det der DLookup som er noget rigtig skrammel og tager alt for lang tid når man kommer op i nogle rimelige størrelser på db'en (jeg har en db med lige omkring 10millioner record i en tabel-jeg tør slet ikke tænke på hvordan DLookup vil køre der)
Du kan også ændre din forespørgsel til kun at indeholde 2 kolonner: ID og så en "beregnet" kolonne: X: overkørselsnummer & " - " & kilometrering & " - " & stedangivelse & " - " & strækning Det er måske ikke så kønt; men på den måde vil du kunne se alle værdierne - uden DLookup. Du skal så bare sætte Antal kolonner til 2 og kolonnebredderne til hhv. 0 og f.eks. 10 (så bred, så alt er med)
Synes godt om
Slettet bruger
29. juli 2009 - 00:01#13
hugopedersen har ret i, at man kan kalde direkte og det er klart at foretrække, men hvis du vil have mulighed for at rette i felterne, så lav en underformular!~)
Beklager det sene svar, jeg var til møde i København i går.
Mugs: det ser ikke ud til at virke, det eneste der er ændret jo sådan set at der ikke bliver angivet hvilken tabel der skal sammenlignes med.
Spg: det er en mulighed, men så vidt jeg ved kan man så ikke sortere posterne i formularen, efter felterne i underformularen? Jeg ville helst at det optrådte som enkelte felter i selve formularen. Men hvis det ikke er muligt, så er din løsning nok den bedste.
HugoPedersen: jeg har faktisk prøvet det der med column(1), men det kunne jeg ikke få til at virke.
Fdata: Det er ikke en forespørgsel, men en formular. Kender godt tricket ;o)
Just for the record: Jeg er helt med på at det er formular. Den forespørgsel, jeg har beskrevet, er jo datakilden til din dropdown liste. Du kan vælge at sortere forespørgslen lige som du vil og du vil altid se alle felterne fint repræsenteret i et enkelt felt - nemlig din dropdown - bare den er bred nok.
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.