Dlookup ververst niet

Status
Niet open voor verdere reacties.

Ekitch

Gebruiker
Lid geworden
11 jun 2006
Berichten
35
Beste mensen,

Ik heb een formulier gemaakt op basis van een tabel. Ik heb daarnaast nog een tabel gemaakt waarin ik wat waardes heb die ik wil opzoeken in het formulier. De 2 tabellen hebben een relatie op ArtikelID

Nu probeer ik in het formulier door middel van deze code:
Code:
=DLookUp("[tlkpKlantnummers]![KlantID]";"tlkpKlantnummers";"[tlkpKlantnummers]![ArtikelID]=[ArtikelID]")

De klantID erbij te zoeken. Echter hij doet die alleen goed met de eerste record. De volgende record (die een ander ArtikelID heeft) heeft dezelfde KlantID terwijl die dus opnieuw gezocht zou moeten worden. Waar mis ik nog iets???

Alvast bedankt
 
Hallo Ekitch,

je informatie is te summier.
Waar gebruik je je code en hoe?
Wat voor formulier (enkelvoudig, doorlopend, ...)?

Geef even meer specifieke info.

PS veel handiger is om te zoeken via een keuzelijst.
Keuzelijst in de kop van je formulier zetten, in een query de gekozen waarde als konditie meenemen en via code je formulier requerien na het bijwerken van je keuzelijst.

Zoek ook even in het forum, "zoeken" staat in de top tien van meestgestelde vragen ;)

Groet,

Tardis
 
Sorry als de info te weinig is ik zal het proberen uit te leggen.

Het gaat om een enkelvoudig formulier dit volledig gebasseerd is op 1 tabel.

Hieraan heb ik een tekstvak toegevoegd. Deze wil ik afhankelijk maken van een ander tekstvlak wat op dit formulier aanwezig is. (Labe ArtikelID)

Normaal gesproken doe je het met een query kopel je de 2 tabbellen aanelkaar en voeg je de extra waarde eraan toe en heb je de tabel "uitgebreid"

Maar toen ik dit in het begin deed kon ik mijn formulier niet meer updaten. Forum natuurlijk nagezocht bleek te maken hebben met bound forms.

Dit probleem heb ik dus opgelost maar nu wil ik wel een connectie maken naar een andere tabel. Enfin dlookup zou de uitkomst moeten bieden.

Code:
=DLookUp("[tlkpKlantnummers]![KlantID]";"tlkpKlantnummers";"[tlkpKlantnummers]![ArtikelID]=[ArtikelID] <----- =553553")
Deze vind ie netjes maar de volgende record heeft een andere ArtikelID echter dat zie hij dus niet. Terwijl als ik "hard" het nummer verander dus:

Code:
=DLookUp("[tlkpKlantnummers]![KlantID]";"tlkpKlantnummers";"[tlkpKlantnummers]![ArtikelID]=553677")
Zoekt ie de juiste KlantID erbij. Maar ik wil dit dus dynamisch hebben en dat hij het automatisch eraan toevoegd. Het zijn allemaal unieke nummers dus hij behoord maar 1 waarde te vinden.

Hoop dat dit duidelijker is.

Wat bedoel je precies met de keuze lijst? Ik moet het namelijk wel uit een tabel kunnen zoeken want ik moet makkelijk nieuwe gegevens toe kunnen voegen.

Grtz

Deze dus gebruikt zoals beschreven. Dit werkt ook maar hij vergelijkt de waarde die hij moet zoeken enkel met de eerste record waar het formulier is opgebouwd.
 
Laatst bewerkt:
Waar precies heb je je DLookup staan?
Voeg anders even je toepassing bij, in Access 2003 formaat of lager, gewinzipt.

Groet,

Tardis
 
Ik zal het maandag proberen te sturen.
Ik heb acces 2000
Tekstvak maken in Formulierontwerp
Eigenschappen en dan staat het in besturingselementbron
 
Probeer anders dit eens

Code:
=DLookUp("[KlantID]";"tlkpKlantnummers";"[ArtikelID]= " & [ArtikelID] & "")

Groet,

Tardis
 
Laatst bewerkt:
Helaas dan geeft ie een fout.

Ik kan de database niet echt posten want dan moet ik het eruit halen en alle waardes gaan aanpassen.

Maar het idee zal ik proberen uit te leggen.

maak 2 tabbellen.
1ste met ArtID en wat ander kolommen voor gegevens
2de met ArtID en KlantID als kolommen

Dan 1 formulier waarin je de 2 tabellen wilt gaan koppelen. (ik wil dus geen query ertussen hebben)

het formulier is opgebouwd uit de kolommen van Tabel 1
Dan een tekstvlak toevoegen waarin de koppeling dus moet komen. Dan zou mijn formule goed moeten zijn maar dus net niet. Ik hoop dat je op deze manier de situatie kunt recreeeren.

Hmm hier de database met dit uitgevoerd :)
 

Bijlagen

Laatst bewerkt:
vervang de code door

=DLookUp("[klantID]";"tabel2";"[artid] = '" & [artid] & "'")

dan werkt het prima.

btw id kun je beter numeriek maken

dan ziet het er zo uit

=DLookUp("[klantID]";"tabel2";"[artid] = " & [artid])

succes
 
Subformulier maken

Indien je van beide tabellen meerdere velden wilt gebruiken is een subformulier ook een optie.
 

Bijlagen

Laatst bewerkt:
Jups zo heb ik het in de tussentijd ook opgelost. Ik vind het alleen zo slordig staan... maar goed is niet anders.

Bedankt in ieder geval
 
wat staat slordig?
- de mogelijkheid die ik je heb gegeven werkt precies zoals jij wilt
- de mogelijkheid die cbakkeren heeft gegeven werkt ook prima en is qua layout prima aan te passen zodat je niet meer ziet dat het om een subformulier gaat
 
mijn excuses ik heb jou oplossing helemaal over het hoofd gezien,
En het werkt :)
Ontzettend bedankt, echt veel '"'" waar je doorheen moet. Is er ergens iets over te lezen hoeveel aanhalingstekens je moet gebruiken voor zoiets?

En met slordig bedoel ik dat je voor 1 vakje weer een subformulier aan moet maken maar dat werkt wel.

Maar goed met jou oplossing hoeft dat niet

Nogmaals bedankt
 
Volgens mij heb je het niet goed begrepen. Je hoeft niet voor ieder veld een subformulier aan te maken. Zolang ze in dezelfde tabel zitten kun je voor alle velden volstaan met 1 subformulier. Vandaar dat ik dit voorbeeld erbij heb gezet.

Als je voor veel velden, moet werken de DLookUp methode, dan moet je bij ieder veld de DLookUp code gebruiken. Het gebruik van een subformulier is dan handiger en bespaart aardig wat werk.

mvg

cbakkeren
 
Laatst bewerkt:
Dat heb ik begrepen het ging echter om maar 1 veld uit een andere tabel. En ik heb er ook al een ander subformulier instaan waarmee meerdere velden worden opgehaald.

Het komt dus goed :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan