Office: Problem mit dlookup

Helfe beim Thema Problem mit dlookup in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, irgendwie bin ich grade blind.... ich habe ein Formular - da werden mehrere Daten eingetragen. So - nachdem nun ein bestimmtes... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Schlauchi, 24. Februar 2010.

  1. Schlauchi Erfahrener User

    Problem mit dlookup


    Hallo zusammen,

    irgendwie bin ich grade blind....

    ich habe ein Formular - da werden mehrere Daten eingetragen.
    So - nachdem nun ein bestimmtes Feld upgedated wurde - soll es mir per dlookup einen Zeit Wert aus einer Abfrage in Abhängigkeit von zwei Formularfeldern auslesen.

    Die beiden Felder enthalten einmal Buchstaben - einmal ne Buchstabenzahlen kombi.
    Diese beiden werde sind einmalig in der Abfrage - der dazugehörige Zeitwert sollte ausgegeben werden...
    Code:
    Me.ETEtime = DLookup("ETE", "TimeETE", "[TLC] = '" & [Forms]![Schedule NEW]![TLCSP] & "'" And "[LessonID] ='" & [Forms]![Schedule NEW]![ComboLesson] & "'")
    
    Der Wert "ETE" sollte ausgeleseen werden - TLCSP und ComboLesson und ins Feld ETEtime übernommen werden.

    Es tut sich aber nichts - keine Fehlermeldung etc.... irgendwas übersehen??

    Danke
     
    Schlauchi, 24. Februar 2010
    #1
  2. miriki Erfahrener User
    me.etetime.value oder .text könnten vielleicht schon helfen, sollten aber so oder so zur Eindeutigkeit mit angegeben werden.

    Es schadet auch nicht, den ersten Parameter noch mit [], also "[ETE]", zu schreiben. Dürfte in diesem Fall aber eigentlich keinen Unterschied machen.

    Analog zum ersten Punkt würde ich auch die Angabe für die WHERE-Geschichte eindeutiger machen: ...]![TLCSP.value] bzw. ...]![ComboLesson.value] (oder ggf. auch .text).

    Wenn das nicht hilft: Ich bastel mir die WHERE-Klausel gerne in einer Extra-Variablen vorher zusammen und übergeb die dann im DLOOKUP. Das hat den Vorteil, daß man sich die auch mal zu Debug-Zwecken mit einer Messagebox ausgeben lassen bzw. im Direkt- oder Verfolgungs-Fenster inspizieren kann.

    Gruß, Michael
     
  3. Schlauchi Erfahrener User
    Hallo Michael,

    nun hab ich wenigstens eine Fehlermeldung... Typen unverträglich

    Code:
    Dim TLCStudent As String
    Dim LessonStudent As String
    TLCStudent = [Forms]![Schedule NEW]![TLCSP]
    LessonStudent = [Forms]![Schedule NEW]![ComboLesson]
    Dim ETEt As Variant
    ETEt = DLookup("[ETE]", "[TimeETE]", "[TLC] = '" & TLCStudent & "'" And "[LessonID] ='" & LessonStudent & "'")
    MsgBox ETEt
    
    Es muss am "LessonStudent" hängen... wenn ich diesen Teil weg mache - nimmt er mir halt den ersten Wert den er durch den TLC findet.

    Nun hab ich das anders gelöst - in der Abfrage habe ich die beiden Felder "TLC" und "LessonID" combiniert. Diese auch in VBA - nun per
    Code:
    TLCcombi = TLCStudent & "-" & LessonStudent
    ETEt = DLookup("[ETE]", "[TimeETE]", "[TLCLESSON] = '" & TLCcombi & "'")
    liest er mir den richtigen Wert raus.
    Ist zwar nicht der "feinste" Weg... aber ein Weg der zur Zeit funktioniert.
    Woran könnte sowas noch hängen - gibts eine alternative zu dLookup??

    Danke und Gruß
    Björn
     
    Schlauchi, 26. Februar 2010
    #3
  4. miriki Erfahrener User

    Problem mit dlookup

    Gleiches Problem wie vorher: Du weist ein Objekt (die ComboBox) auf eine String-Variable zu. Mit ...]![ComboLesson].text könnte es schon klappen.

    Ich verlaß mich eigentlich nie darauf, daß irgendeine "Standard"-Eigenschaft benutzt wird, wenn man nicht explizit was angibt. Will ich die Breite ansprechen, benutze ich .width, will ich den Wert haben, kommt eben ein .value dran. Läßt man die gewünschte Eigenschaft weg, benutzt VBA manchmal eine "Standard"-Eigenschaft, die aber auch nicht unbedingt die ist, die man eigentlich wollte. Und bevor ich mir merke, wann und unter welchen Bedingungen bei welchem Objekt denn nun welche Standard-Eigenschaft benutzt wird, geb ich die gewünschte lieber gleich direkt mit an.

    Gruß, Michael
     
    miriki, 1. März 2010
    #4
  5. Schlauchi Erfahrener User
    Hab nun das mit dem .Text dran gehängt...
    Code:
    LessonStudent = [Forms]![Schedule NEW]![ComboLesson].Text
    hab auch schon ein setfocus auf das Feld gesetzt - gleicher Fehler. :roll:
    hab mir die variable "LessonStudent" aber schon mal als Msgbox ausgeben lassen - das funktioniert ohne Probleme.

    Gruß
    Björn
     
    Schlauchi, 2. März 2010
    #5
  6. miriki Erfahrener User
    Ich verwechsel das auch immer wieder und krieg mit schöner Regelmäßigkeit den gleichen Fehler... ;-) Versuch mal .value, dann müßte es gehen. Sorry...

    Der Hinweis mit der msgbox ist aber gut. Das deutet darauf hin, daß in diesem Fall anscheinend zumindest die richtige Standard-Eigenschaft benutzt wird. Hmmm...

    Liegt das LessonStudent auf dem aktuellen Formular? Dann könntest du es mit Me!LessonStudent.value versuchen.

    Und vielleicht zum weiteren Eingrenzen: Wenn das Steuerelement auf dem Formular und das Feld in der Tabelle gleich heißen (was eigentlich Standard ist), würde ich mal das Steuerelement auf dem Formular leicht umbenennen.

    Denn tlw. ist es nicht ganz eindeutig, ob man auf das Tabellenfeld im Datensatz oder das Steuerelement auf dem Formular zugreift. Da kommt man mit den ganzen . und ! und [ schon mal leicht durcheinander.

    Ich hab leider z.Z. keine Möglichkeit, da mal auf die Schnelle ein Beispiel zusammenzubasteln. Ich würde das sonst gerne mal versuchen, nachzubauen. Das wird aber erst gegen Freitag was.

    Gruß, Michael
     
    miriki, 3. März 2010
    #6
Thema:

Problem mit dlookup

Die Seite wird geladen...
  1. Problem mit dlookup - Similar Threads - Problem dlookup

  2. Outlook Problem

    in Microsoft Outlook Hilfe
    Outlook Problem: Hallo zusammen, ich brauche Hilfe bei folgendem Problem. Ich bekomme pro Woche ca. 44 Mails vom immer gleichen Absender, no-reply@deutschepost.de mit immer dem gleichen PDF-Anhang. Die...
  3. Problem bei Fußnote

    in Microsoft Word Hilfe
    Problem bei Fußnote: Hallo zusammen, habe folgendes Problem. Sobald ich eine Fußnote einfüge, erscheint automatisch am Ende der Seite eine Art Überschrift mit der Zahl 1. Hier der Screenshot. Habe schon alles...
  4. Excel found a problem with one or more formula references in this worksheet

    in Microsoft Excel Hilfe
    Excel found a problem with one or more formula references in this worksheet: Liebes Forum, ich habe ein Problem, das viel durch das Internet geistert, aber nirgendwo gibt es eine erfolgreiche Lösung für: "Excel found a problem with one or more formula references in this...
  5. Zählenwenns Problem

    in Microsoft Excel Hilfe
    Zählenwenns Problem: Hallo. Ich möchte zählen wie oft der Name Person 2 vorkommt aber nur dann wenn darüber ein anderer Name steht. Also in C3 sollte 5 mal stehen aber in C4 nichts bzw. 0 Dann in C8 die 2 und in C9...
  6. Problem mit Seitenzahlen/Seitenbeschriftung

    in Microsoft Word Hilfe
    Problem mit Seitenzahlen/Seitenbeschriftung: Hallo, ich schreibe gerade meine Masterarbeit und habe ein kurioses Problem, bei dem ich nicht weiterkomme. Ich habe eine "beidseitige" Vorlage für die Masterarbeit der Universität verwendet. Da...
  7. Data Transform, Problem with delimiter

    in Microsoft Excel Hilfe
    Data Transform, Problem with delimiter: Hello Community, I encounter one problem with excel. When I export table from csv I have a delimiter semicolon, but it doesn't work. I found solution. If I would go to Power Query Editor - Split...
  8. Problem bei der DLookup Funktion

    in Microsoft Access Hilfe
    Problem bei der DLookup Funktion: Hallo, ich habe ein Problem mit der DLooup Funktion und ich komme einfach nicht auf die Lösung. Ich habe eine Form mit einem Edit-Feld und einem Button. Nun soll ich beim Klicken den Inhalt in...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden