Dlookup auf Tabelle mit Suchkriterium klappt nicht

14/03/2008 - 14:27 von Markus | Report spam
Hallo NG,
hoffe, mir kann einer mit meinem Dlookup-Problem helfen (Daten sein
Beispieldaten):

Quelltabelle: tbl_Artikel:
Artikelname Lieferant Hersteller Country
A1 L1 H1 C1
A2 L2 H2 C2
A3 L3 H3 C3

Ich habe ein Formular, welches ich wie folgt füllen lassen möchte:
combA hat einen Verweis auf Artikelname und tràgt nach Aktualisierung
diese Daten den ausgewàhlten Artikelname in das ungebundene Feld txtA
ein.
Nun sollen per Dlookup die ungebundenen Felder
txtL = Lieferant
txtH = Hersteller
txtC = Country
auch gefüllt werden
Anhand der Accesshilfe hab ich nun folgende probiert:


1 Private Sub combA_AfterUpdate()
2 Me.txtA = Me.combA
3 Dim varX As Variant
4 varX = DLookup("[Hersteller]", "tbl_Artikel", "[Artikelname] =" &
Forms![frm_Eingabe]![txtA])
5 End Sub

Bei der Auswahl von "A3" als Lieferant bekomme aber bei Ausführung
Zeile 4 den Laufzeitfehler 2471:
"Der Ausdruck, den Sie als Abfrageparameter eingegeben haben, hat
folgenden Fehlr vorursacht: 'Das Objekt enthàlt nicht das
Automatisierungsobjekt 'A3"
zurück.

Kann mir einer sagen, was ich falsch mache?

Vielen herzlichen Dank für eure Hilfe
Markus
 

Lesen sie die antworten

#1 Jens Schilling
14/03/2008 - 14:47 | Warnen spam
Hallo, Markus

Markus wrote:
Hallo NG,
hoffe, mir kann einer mit meinem Dlookup-Problem helfen (Daten sein
Beispieldaten):

Quelltabelle: tbl_Artikel:
Artikelname Lieferant Hersteller Country
A1 L1 H1 C1
A2 L2 H2 C2
A3 L3 H3 C3

Ich habe ein Formular, welches ich wie folgt füllen lassen möchte:
combA hat einen Verweis auf Artikelname und tràgt nach Aktualisierung
diese Daten den ausgewàhlten Artikelname in das ungebundene Feld txtA
ein.
Nun sollen per Dlookup die ungebundenen Felder
txtL = Lieferant
txtH = Hersteller
txtC = Country
auch gefüllt werden



Nimm in das Kombinationsfeld alle anderen Felder mit auf ( also alle 4 ) -
und greife dann via "Column()" auf die Werte zu, dass erspart die das
Gefusel mit DLookup.

txtL = combA.Column(1)
txtH = combA.Column(2)
txtC = combA.Column(3)

Anhand der Accesshilfe hab ich nun folgende probiert:
4 varX = DLookup("[Hersteller]", "tbl_Artikel", "[Artikelname] =" &
Forms![frm_Eingabe]![txtA])



Ansonsten hast Du hier einen String, nach dem Du suchen willst, der gehört
in Anführungszeichnen, etwa so :

varX = DLookup("[Hersteller]", "tbl_Artikel", "[Artikelname] ='" &
Forms![frm_Eingabe]![txtA]) & "'"

Gruss
Jens
______________________________
2. SEK (SQL Server-Entwickler-Konferenz)
Nürnberg, 12./13.4 und 19./20.4.2008
FAQ: http://www.donkarl.com

Ähnliche fragen