Ich habe ein MS-Access-Formular, um Bestellungen einzugeben. Es ist ein Hauptformular mit den allgemeinen Bestelldetails - Name des Lieferanten, Datum und dann ein Unterformular in der Datenblattansicht, in dem der Benutzer die tatsächlich bestellten Artikel eingibt. Das erste Feld im Unterformular ist eine Combobox zur Auswahl des Artikels, das nächste Feld ist der bestellte Betrag und dann werden die Preis- und Gesamtfelder automatisch berechnet.Combox-Wert zeigt nicht nach dem Laden VBA
Ich wollte, dass die Combobox nur die Artikel des Lieferanten anzeigt, der auf dem Hauptformular ausgewählt wurde. Ich tat dies erfolgreich mit dem folgenden Code
Private Sub CmbSupplier_Change()
Me!sfrmOrderDetail.Form!CmbItem.RowSource = "SELECT Items.ID, Items.Product, " _
& " Items.Supplier" _
& " FROM tblItems" _
& " WHERE ((Items.Supplier)= " _
& Me.CmbSupplier & ");"
End Sub
ich dies auch in den Form_Current()
ereignis- setzen, damit es soll es wiederholen, wenn ich zu einem neuen Datensatz zu ändern.
Aber nach ein paar Bestellungen ging ich zurück zur vorherigen Bestellung mit dem Formular zurück, um zu überprüfen, was ich eingegeben und ich sah, dass, während der Rest der Informationen blieb, die items
Feld (die Combobox) auf der Der erste Datensatz des Unterformulars war leer. Alle zusätzlichen Zeilen wurden ausgefüllt. Wenn ich mit dem Cursor in dieses leere Feld gehe, wird es "aufgefrischt" und den Wert ausgefüllt.
Nur so bin ich klar, zum Beispiel, ist meine erste Bestellung Lieferant Staples. Ich habe drei Zeilen in meinem subfrom - Tinte, Hefter, Papier. Nach dem Verlassen in den Datensatz und kommt zurück, geschieht Folgendes:
- Die Tinte nicht angezeigt wird, obwohl Hefter und Papier sowie die Menge an Tinte, Preis und insgesamt ist.
- Wenn ich in das Feld drücke, wird es plötzlich angezeigt und ich kann die Combobox-Liste sehen, die die richtigen Elemente aufgelistet hat, damit der Code definitiv funktioniert.
Dies ist eine Menge Text, ohne auf den Punkt zu kommen. Wo ist das Problem? Enthält die Tabelle 'tblItems' nicht die gewünschten Daten? Enthält diese Tabelle die Daten, aber "CmbItem" zeigt die Einträge nicht an, nachdem Sie die Eigenschaft 'RowSource' festgelegt haben? Funktioniert das, aber der Event-Handler wird nicht wie erwartet aufgerufen, sodass die Combobox nie aktualisiert wird? Bitte isolieren Sie den Fehler und aktualisieren Sie Ihre Frage, damit Sie genauer bestimmen können, wo und wie wir Ihnen helfen können. – Leviathan
sollte es in Access sein, es wäre besser, das entsprechende Tag – user3598756