Ergebnis 1 bis 5 von 5

[MS Access VBA]

  1. #1 Zitieren
    Waldläufer
    Registriert seit
    Jan 2010
    Beiträge
    175
    Hi Leute,

    ich bin dabei ein Inventarsystem mit Access zu erstellen. Dabei gibt es eine extra Form, in der alle Details zu einem Inventareintrag (Item) angezeigt werden. So eine Detailform gibt es auch für eine Tabelle mit Bestellungen (tbl_Orders). Nun möchte ich per Buttonclick einige Werte der FormItemdetails, wie Name, ID, Hersteller, usw. in die sich öffnende FormOrders kopieren, sodass ich in der FormOrders nur noch auf meinen Save button klicken muss und dadurch ein neuer Eintrag in der Orderstabelle entsteht.

    Leider klappt das ganze nicht.

    Mein bisheriger Code:
    (Ich habe ihn auf nur zwei zu kopierende Werte reduziert)

    Private Sub btn_order_frm_item_details_Click()
    Dim strItem As String, strGerman As String
    strItem = Me.txt_Itemname.Value
    strGerman = Me.txt_German.Value
    DoCmd.OpenForm "frm_orders_details", acNormal, "", "", acAdd, acDialog
    Forms!frm_orders_details!txt_Itemname.Value = strItem
    Forms!frm_orders_details!txt_German.Value = strGerman
    End Sub
    Da musst du durch als Lurch,
    wenn du ein Frosch werden willst...

    lg Daniel

    [Bild: mirandame_ban.gif]
    atzen1991 ist offline Geändert von atzen1991 (20.12.2016 um 12:08 Uhr)

  2. #2 Zitieren
    Tieftöner Avatar von Lookbehind
    Registriert seit
    Dec 2007
    Beiträge
    15.176
    Was passiert denn stattdessen? "Geht nicht" ist ja irgendwie keine aussagekräftige Fehlermeldung.
    (Ich warte immer noch auf den Tag, an dem irgendein Scherzkeks so eine Fehlermeldung ernsthaft irgendwo ein programmiert.)

    Nebenbei: Warum musst du denn so viele Werte kopieren? Sollte es nicht eigentlich reichen den Primary-Key aus der Item-Tabelle als Froeign-Key in die Orders-Tabelle ein zu tragen?
    Lookbehind ist offline

  3. #3 Zitieren
    Waldläufer
    Registriert seit
    Jan 2010
    Beiträge
    175
    Zitat Zitat von Lookbehind Beitrag anzeigen
    Was passiert denn stattdessen? "Geht nicht" ist ja irgendwie keine aussagekräftige Fehlermeldung.
    (Ich warte immer noch auf den Tag, an dem irgendein Scherzkeks so eine Fehlermeldung ernsthaft irgendwo ein programmiert.)

    Nebenbei: Warum musst du denn so viele Werte kopieren? Sollte es nicht eigentlich reichen den Primary-Key aus der Item-Tabelle als Froeign-Key in die Orders-Tabelle ein zu tragen?
    Naja er öffnet die OrdersForm und dann passiert einfach nichts. Er fügt die Werte also nicht in die Textfelder ein. Wenn ich die Form dann schließe, kommt eine Fehlermeldung, dass er diese Form nicht findet. Im Debugger wird mir dann aber der erste Befehl markiert, welcher den ersten Wert in das Textfeld einfügen soll (6. Zeile in dem Code aus meinem ersten Beitrag).

    Das mit dem Key habe ich auch schon probiert. Aber das Problem war, dass ich dann in der OrdersTabelle keine Items einfügen konnte, welche noch nicht im Inventar vorkommen. Ich nehme an, dass man das irgendie hinkriegen kann, dass das neue Item bei Eingabe in die Bestelltabelle auch automatisch in das Inventar eingefügt wird. Aber das habe ich leider nicht hinbekommen
    Da musst du durch als Lurch,
    wenn du ein Frosch werden willst...

    lg Daniel

    [Bild: mirandame_ban.gif]
    atzen1991 ist offline

  4. #4 Zitieren
    Waldläufer
    Registriert seit
    Jan 2010
    Beiträge
    175
    Ok ich habe es nun doch hinbekommen.
    Ich musste einfach die OrdersForm erst Ausgeblendet öffnen und nachdem alle Werte in die Textfelder eingefügt waren, nochmal als Dialog öffnen. Dann enthielten die Felder nun alle Werte.

    Private Sub btn_order_frm_item_details_Click()
    Dim strItem As String, strGerman As String
    strItem = Me.txt_Itemname.Value
    strGerman = Me.txt_German.Value
    DoCmd.OpenForm "frm_orders_details", acNormal, "", "", acAdd, acHidden
    Forms!frm_orders_details!txt_Itemname.Value = strItem
    Forms!frm_orders_details!txt_German.Value = strGerman
    DoCmd.OpenForm "frm_orders_details", acNormal, "", "", acAdd, acDialog
    End Sub

    Die Frage stellt sich mir jetzt natürlich: Wieso ist das so? Kann mir das jmd erklären?
    Da musst du durch als Lurch,
    wenn du ein Frosch werden willst...

    lg Daniel

    [Bild: mirandame_ban.gif]
    atzen1991 ist offline

  5. #5 Zitieren
    Pretty Pink Pony Princess  Avatar von Multithread
    Registriert seit
    Jun 2010
    Ort
    Crystal Empire
    Beiträge
    11.231
    Ohne den ganzen Code zu kennen, wird es schwierig dir da zu sagen wieso das so ist.

    Möglich das es irgendwas mit der aufrufreihenfolge deines Programmes zu tun hat.
    [Bild: AMD_Threadripper.png] Bei Hardware gibt es keine eigene Meinung, bei Hardware zählen nur die Fakten.


    Probleme mit der Haarpracht? Starres Haar ohne Glanz? TressFX schafft Abhilfe. Ja, TressFX verhilft auch Ihnen zu schönem und Geschmeidigen Haar.
    [Bild: i6tfHoa3ooSEraFH63.png]
    Multithread ist offline

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •