PDA

Vollständige Version anzeigen : Dlookup


AXESS_ROOKIE
24.01.2008, 12:54
Hallo, da bin ich wieder!! :entsetzt:

Ich lese in ein Formular eine Tabelle ein, hier stehen Artnr und HOSNR.
Um die jeweiligen Bezeichnungen jeweils in ein extra Textfeld zu schreiben wollte ich Dlookup benutzen. (Also im Textfeld = Dlookup......)
Die zugehörige Artikelbezeichnung steht in Material und die entsprechende Hosbezeichnung in T-CUSTOMER.

Leider krieg ich die Synthax nicht hin! Ist die Trennung der Parameter mit Komma oder Semikolon.


Hoffe es kann mir jemand helfen!?



Gruß

Lothar

CptChaos
24.01.2008, 12:56
Wieso mit DLookup?
Kannst Du das nicht über eine entsprechende Abfrage lösen?

DLookup("Feld","Tabelle","Kriterium")
In einer Abfrage die , durch ; ersetzen

AXESS_ROOKIE
24.01.2008, 13:05
Hallo Cptn,
doch schon, aber ich würds halt gerne mit Dlookup machen!(kein refresh; einfach nur ne Formel die den Wert zieht, zumindest hab' ichs so verstanden)


Mein Ansatz im Textfeld: Dlookup("[Mat desc"]"; "t-Material"; "Material] = Me![ARTNR])

Mit deinem Hinweis komm ich dann auch nicht weiter, sorry.


Gruß

Lothar

Louisleon
24.01.2008, 13:14
Dlookup("[Mat desc"]"; "t-Material"; "Material] = Me![ARTNR])
Damit wirds natürlich nichts ;)
versuchs mal so:
Dlookup("[Mat desc]"; "t-Material"; "Material = " & Me![ARTNR])


Gruß

LL

AXESS_ROOKIE
24.01.2008, 13:30
Hallo Louisleon,

warum vor dem ME ein &?
= " & Me![ARTNR])

Wahrscheinlich ist das ME auch falsch, ich wollte den Schlüssel [Artnr] aus dem aktuellen Formular! Deswegen Me, aber wahrscheinlich meint er dann mit Me das Textfeld?!

Die Synthax wird nicht mehr bemeckert aber dafür habe ich #NAME!


Hoffe du schaust nochmal!?


Gruß

Lothar

CptChaos
24.01.2008, 14:11
Ist ArtNr ein String-Wert oder eine Zahl?
Bei einem Stringwert sähe die Dlookup so aus:
Dlookup("[Mat desc]"; "t-Material"; "Material = '" & Me![ARTNR] & "'")
Bei einer Zahl stimmt die Version von Louis
Dlookup("[Mat desc]"; "t-Material"; "Material = " & Me![ARTNR])

ArtNr ist das Feld des Formulars.

AXESS_ROOKIE
24.01.2008, 14:23
Hallo CPT. Chaos,

es ist ein string feld, klar!
(ich weiss es sollte eigentlich ein integer sein, ich bekomms aber eben so aus dem System!)

Jedenfalls klappt es so !



Vielen Dank, euch beiden für die Hilfe!

Wieder ein Stückchen weiter! Prima!

Gruß

Lothar

ebs17
24.01.2008, 14:25
Entweder in deutsch ...
DomWert(...; ...; ...)

oder in englisch
DLookup(..., ..., ...)

CptChaos
24.01.2008, 15:01
@Eberhard: Hat weniger was mit Deutsch/Englisch zu tun sondern damit wo es verwendet wird.

Direkt im VBA: ,
In einer Abfrage: ;

Er macht allerdings in der Abfrage aus DLookUp DomWert

ebs17
24.01.2008, 15:13
@Benny: Kein Widerspruch. Aber nicht immer wird das muntere Mischen durch Access korrigiert. Da gibt es genügend "Fälle", wo aus irgendwelchen oder einzigartigen oder plötzlich auftretenenden unerklärlichen Gründen ein Problem auftritt.

Eine von Haus aus korrekt verwandte Syntax hilft da schon ein Stück weiter.
Leider krieg ich die Synthax nicht hin! Ist die Trennung der Parameter mit Komma oder Semikolon.
@AXESS_ROOKIE: Ein Blick in die OH hätte es an der Stelle auch gemacht.

CptChaos
24.01.2008, 15:15
@Benny: Kein Widerspruch. Aber nicht immer wird das muntere Mischen durch Access korrigiert.
Deswegen nutze ich grundsätzlich die originäre, englische Bezeichnung ;)