Access (2010), Datensätze zählen via VBA und Wert in anderes Formular übergeben
Guten Morgen,
ich komme bei meiner Access-Datenbank leider nicht weiter. Ich habe eine Datei in der zwei Tabellen und dazu zwei Formulare angelegt sind. Einmal das Hauptformular und in diesem Formular wird auch das zweite Formular angezeigt. Es handelt sich um eine kleine und einfache Kundenverwaltung.
Nun habe ich via VBA "Beim Anzeigen" im UF und dem Befehl
Die Anzahl an Datensätzen gezählt. In Hauptformular sind die Daten des Kunden hinterlegt, im UF die Artikel die er kauft. Die Artikel werden nun korrekt gezählt. Nun würde ich diesen Wert gerne an das Hauptformular übergeben, denn im Kopf des Hauptformulars soll erscheinen, wie viele Artikel der Kunde besitzt. Hier komme ich leider nicht weiter.
Ich bin mir sicher, dass Ihr mir bei dem kleinen Problem helfen könnt.
Vielen Dank
@d4shoerncheN
ich komme bei meiner Access-Datenbank leider nicht weiter. Ich habe eine Datei in der zwei Tabellen und dazu zwei Formulare angelegt sind. Einmal das Hauptformular und in diesem Formular wird auch das zweite Formular angezeigt. Es handelt sich um eine kleine und einfache Kundenverwaltung.
Nun habe ich via VBA "Beim Anzeigen" im UF und dem Befehl
Me!Anzahl_Artikel.Value = Me.RecordsetClone.RecordCount
Ich bin mir sicher, dass Ihr mir bei dem kleinen Problem helfen könnt.
Vielen Dank
@d4shoerncheN
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 231042
Url: https://administrator.de/contentid/231042
Ausgedruckt am: 22.11.2024 um 02:11 Uhr
11 Kommentare
Neuester Kommentar
Hi @d4shoerncheN,
mit
in der Subform solltest du an eine Referenz der Form erhalten in der sich die Subform befindet. Damit kannst du dann den Inhalt eines Steuerelementes in der Parentform setzen.
Grüße Uwe
mit
Dim formParent As Form
Set formParent = Me.Parent
formParent.DeinTextFeld.SetFocus
formParent.DeinTextFeld.Value = "Testwert"
Grüße Uwe
Also,
du gehst in deine Subform, markierst diese mit dem rechteckigen Kästchen ganz oben links im Formular, und wählst dann in den Eigenschaften unter Ereignisse > Beim Anzeigen den Code-Editor. Dort fügst du dann den obigen Code ein. Im Code musst den Namen des Textfeldes welches in deiner Hauptform liegt anpassen (DeinTextFeld).
Wenn dir das nicht hilft -> Teamviewer
Grüße Uwe
du gehst in deine Subform, markierst diese mit dem rechteckigen Kästchen ganz oben links im Formular, und wählst dann in den Eigenschaften unter Ereignisse > Beim Anzeigen den Code-Editor. Dort fügst du dann den obigen Code ein. Im Code musst den Namen des Textfeldes welches in deiner Hauptform liegt anpassen (DeinTextFeld).
Dim formParent As Form
Set formParent = Me.Parent
formParent.DeinTextFeld.SetFocus
formParent.DeinTextFeld.Value = Me.RecordsetClone.RecordCount
Grüße Uwe
Zitat von @d4shoerncheN:
Kann man auch anzeigen lassen, welcher der aktuelle Datensatz ist? z. B. 2 von 3 statt nur 3.
Verstehe ich jetzt nicht ganz ... der aktuell markierte Datensatz im Unterformular soll im Hauptformular angezeigt werden ?Kann man auch anzeigen lassen, welcher der aktuelle Datensatz ist? z. B. 2 von 3 statt nur 3.
Hallo Toni,
Nothing ist impossible
also wenn deine Checkbox z.B. den Namen cbAGB hat dann kannst du es folgendermaßen machen:
Für den Fall das du nicht weißt wohin mit dem Code, hier dazu noch eine Demo-Datenbank.
Das Kontrollkästchen sollte natürlich an ein Wahr/Falsch-Feld in der Datenbank gebunden sein.
Grüße Uwe
Nothing ist impossible
also wenn deine Checkbox z.B. den Namen cbAGB hat dann kannst du es folgendermaßen machen:
Private Sub Form_Close()
checkAGB
End Sub
Private Sub Form_Open(Cancel As Integer)
checkAGB
End Sub
Sub checkAGB()
If cbAGB.Value = False Then
MsgBox "Bitte nicht vergessen, Sie müssen noch den AGB zustimmen!", vbExclamation
End If
End Sub
Das Kontrollkästchen sollte natürlich an ein Wahr/Falsch-Feld in der Datenbank gebunden sein.
Grüße Uwe