Hallo, deine Erklärungen sind gut, aber helfen mir irgendwie nicht weiter. Ich möchte gerne einen Wert zurückgeben. aus 3 verschiedenen Kriterien. Alle Kriterien stammen aus einer Tabelle oder Formular. Am Ende soll eine Zahl herauskommen.Haste hier ne Lösung ?
Laut deiner Beschreibung würde ich sagen, dass die Dlookup-Funktion für deinen Fall das richtige ist. Beispiel für den Fall, dass deine Kriterien immer gleich sind: dlookup("Alter","Kontakte","Vorname='Michael' AND Nachname='Schneider' AND PLZ='49090'") Beispiel für den Fall, dass deine Kriterien im Formular stehen (variable Kriterien) DLookup("Alter", "Kontakte", "Vorname='" & Me.Vorname & "' AND Nachname='" & Me.Nachname & "' AND PLZ='" & Me.PLZ & "'") Und wichtig ist, dass dlookup das Ergebnis irgendwo hin schreiben oder ausgeben kann. Beispiel: MsgBox dlookup("Spaltenname","Tabellenname","Kriterium") --> zeigt Ergebnis in einem Meldungsfenster an Me.Alter = dlookup("Spaltenname","Tabellenname","Kriterium") --> schreibt Ergebnis in ein Feld im Formular Falls ich deine Frage nicht richtig verstanden habe, schreibe gerne ausführlich dein Vorhaben mit Tabellenname, Feld welches die Ergebniszahl enthält, die Kriterien und was der Zweck dieser Abfrage ist.
Hallo danke für die schnelle Antwort.Mein kleines Problemchen liegt am DomWert /Dlookup.Vorab: Ich habe mir ein Kundendatenverwaltungsprogramm für meine Versicherungskunden zusammengestellt. komme aber nicht weiter, ich irgendwie auf dem Schlauch stehe:Ich nutze Access 2016 Ich habe folgende Tabelle (tblProvisionsSatz) mit folgenden Feldern:ProvisionsSatzID - Autowert PrimärschlüsselKundenID und VermittlerID - ZahlProvisionsAP - kurzer Text (habe ich schon umgewandelt von Prozentzahl auf Text)ProvisionsBP - kurzer Text (habe ich schon umgewandelt von Prozentzahl auf Text)VersicherungsGesellschaftName - Nachschlagefeld - bezieht sich auf eine AbfrageVersicherungsSparteName - Nachschlagefeld - bezieht sich auf eine Abfragefür die beiden existiert auch eine TabelletblVersicherungsGesellschafttblVersicherungsSparte - beide Tabellen haben jeweils einen Primärschlüssel Der Domwert soll im zweiten Unterformular in einem ungebundenen Textfeld bei dem richtigen Vermittler angezeigt werden:frmKunde (HF) frmVertrag(1. UF) frmVertragDetails(2. UF)ich habe schon verschiedene Syntax probiert, auch als VBA-Code funktioniert es immer nur ohne Kriterium.Ohne Kriterium bekomme ich aber keinen eindeutigen WertSyntax =(DomWert("[ProvisionssatzBP]";"[tblProvisionsSatz]";"[KuerzelVermittler] =Form![KuerzelVermittler] And [VersicherungsGesellschaftName]=Form![VersicherungsGesellschaftName] And [VersicherungsSparteName]=Form![VersicherungsSparteName]"))mit frmProvisionsSatz funktioniert es auch nicht !=DomWert("[ProvisionssatzBP]";"[tblProvisionsSatz]";"[KuerzelVermittler] =Form![KuerzelVermittler] And [VersicherungsGesellschaftName]=Form![VersicherungsGesellschaftName] And [VersicherungsSparteName]=Form![VersicherungsSparteName]") Vorab schon mal Danke, wenn das ganze nicht so klar zu verstehen ist, kurze Rückinfo Danke.LG
Spontan würde mir einfallen, dass ein klarer Bezug auf das Unterformular oder das Hauptformular in der DomWert-Funktion enthalten sein muss. D.h. versuche mal die Formulare gezielt in der Funktion anzusprechen: Syntax: Forms!Hauptformular!Unterformular!Feld Bsp1: Forms![frmKunde]![frmVertragDetails]![Feld] Bsp2: Forms![frmKunde]![KuerzelVermittler] Ein weiterer Punkt ist folgender Ausdruck: And [VersicherungsGesellschaftName]=Form![VersicherungsGesellschaftName] In der Regel müssen die Formulare geöffnet sein, damit DomWert darauf zugreifen kann und dann wäre auch die Frage, welcher Datensatz der richtige ist. D.h. hier muss anders abgefragt werden. Aber du kannst mir auch gerne eine PN an christian.enderle@patabo.de schicken. Am besten mit der Datenbank (Kopie und Daten löschen, aber Testdaten wären gut). Und nochmal genau dein Vorhaben beschreiben.
Hallo, deine Erklärungen sind gut, aber helfen mir irgendwie nicht weiter. Ich möchte gerne einen Wert zurückgeben. aus 3 verschiedenen Kriterien. Alle Kriterien stammen aus einer Tabelle oder Formular. Am Ende soll eine Zahl herauskommen.Haste hier ne Lösung ?
Laut deiner Beschreibung würde ich sagen, dass die Dlookup-Funktion für deinen Fall das richtige ist.
Beispiel für den Fall, dass deine Kriterien immer gleich sind:
dlookup("Alter","Kontakte","Vorname='Michael' AND Nachname='Schneider' AND PLZ='49090'")
Beispiel für den Fall, dass deine Kriterien im Formular stehen (variable Kriterien)
DLookup("Alter", "Kontakte", "Vorname='" & Me.Vorname & "' AND Nachname='" & Me.Nachname & "' AND PLZ='" & Me.PLZ & "'")
Und wichtig ist, dass dlookup das Ergebnis irgendwo hin schreiben oder ausgeben kann.
Beispiel:
MsgBox dlookup("Spaltenname","Tabellenname","Kriterium") --> zeigt Ergebnis in einem Meldungsfenster an
Me.Alter = dlookup("Spaltenname","Tabellenname","Kriterium") --> schreibt Ergebnis in ein Feld im Formular
Falls ich deine Frage nicht richtig verstanden habe, schreibe gerne ausführlich dein Vorhaben mit Tabellenname, Feld welches die Ergebniszahl enthält, die Kriterien und was der Zweck dieser Abfrage ist.
Hallo danke für die schnelle Antwort.Mein kleines Problemchen liegt am DomWert /Dlookup.Vorab: Ich habe mir ein Kundendatenverwaltungsprogramm für meine Versicherungskunden zusammengestellt. komme aber nicht weiter, ich irgendwie auf dem Schlauch stehe:Ich nutze Access 2016 Ich habe folgende Tabelle (tblProvisionsSatz) mit folgenden Feldern:ProvisionsSatzID - Autowert PrimärschlüsselKundenID und VermittlerID - ZahlProvisionsAP - kurzer Text (habe ich schon umgewandelt von Prozentzahl auf Text)ProvisionsBP - kurzer Text (habe ich schon umgewandelt von Prozentzahl auf Text)VersicherungsGesellschaftName - Nachschlagefeld - bezieht sich auf eine AbfrageVersicherungsSparteName - Nachschlagefeld - bezieht sich auf eine Abfragefür die beiden existiert auch eine TabelletblVersicherungsGesellschafttblVersicherungsSparte - beide Tabellen haben jeweils einen Primärschlüssel Der Domwert soll im zweiten Unterformular in einem ungebundenen Textfeld bei dem richtigen Vermittler angezeigt werden:frmKunde (HF) frmVertrag(1. UF) frmVertragDetails(2. UF)ich habe schon verschiedene Syntax probiert, auch als VBA-Code funktioniert es immer nur ohne Kriterium.Ohne Kriterium bekomme ich aber keinen eindeutigen WertSyntax
=(DomWert("[ProvisionssatzBP]";"[tblProvisionsSatz]";"[KuerzelVermittler]
=Form![KuerzelVermittler] And [VersicherungsGesellschaftName]=Form![VersicherungsGesellschaftName]
And [VersicherungsSparteName]=Form![VersicherungsSparteName]"))mit frmProvisionsSatz funktioniert es auch nicht !=DomWert("[ProvisionssatzBP]";"[tblProvisionsSatz]";"[KuerzelVermittler]
=Form![KuerzelVermittler] And [VersicherungsGesellschaftName]=Form![VersicherungsGesellschaftName]
And [VersicherungsSparteName]=Form![VersicherungsSparteName]")
Vorab schon mal Danke, wenn das ganze nicht so klar zu verstehen ist, kurze Rückinfo Danke.LG
Spontan würde mir einfallen, dass ein klarer Bezug auf das Unterformular oder das Hauptformular in der DomWert-Funktion enthalten sein muss.
D.h. versuche mal die Formulare gezielt in der Funktion anzusprechen:
Syntax: Forms!Hauptformular!Unterformular!Feld
Bsp1: Forms![frmKunde]![frmVertragDetails]![Feld]
Bsp2: Forms![frmKunde]![KuerzelVermittler]
Ein weiterer Punkt ist folgender Ausdruck:
And [VersicherungsGesellschaftName]=Form![VersicherungsGesellschaftName]
In der Regel müssen die Formulare geöffnet sein, damit DomWert darauf zugreifen kann und dann wäre auch die Frage, welcher Datensatz der richtige ist. D.h. hier muss anders abgefragt werden.
Aber du kannst mir auch gerne eine PN an christian.enderle@patabo.de schicken. Am besten mit der Datenbank (Kopie und Daten löschen, aber Testdaten wären gut). Und nochmal genau dein Vorhaben beschreiben.