Hallo,
Aber es hat mir nicht ganz weitergeholfen.
kein Wunder, wenn Du nur die halbe Wahrheit schreibst…
Folgendes:
Ich habe ein Formular in dem ein Unterformular eingebaut ist
in diesen Unterformular befinden sich die Angebot_Nr (ID) und
weitere Felder die zum Angebot gehören.
ok
IM Unterformular befindet sich der Button Angebotsvorschau
dahinter verbirgt sich ein Bericht.
wäre in Ordnung, sobald es sich beim UF un ein Einzelform und nicht um ein Endlosform handelt.
Diese Vorschau soll nur die Daten für die aktive Angebot_Nr
ausspucken.
„aktive Angebot_Nr“ heißt dann „aktiver Datensatz“ (der, der den Fokus hat)
ICh habe deshalb auch weil ich keine Ahnung von VBA habe, ein
Makro hinterlegt was den Bericht öffnet.
vergiß Makros und lese Dich ein wenig in VBA ein.
Das hat auch
funktioniert nur hatte er mir alle Angebote angezeigt nicht
das spezifische.
Deshalb dachte ich mir ich muss irgendwie und irgendwo
festlegen das er die aktuelle ID nehmen soll.
ist ja auch richtig
Deshalb bin ich
in das Unterformular hineingegangen und habe unter
Eigenschaften/ Datenherkunft in die Abfrage und Angebot_Nr,
bei Kriterium [Formulare]![Angebote]![Angebote_nr]eingetragen
seitdem druckt der das Formular mit leerem Inhalt.
das ist nun wieder nicht ganz das Gelbe vom Ei.
Dein Code hat auch leider nicht funktioniert. Könntest du mir
noch einen anderen Tipp geben?
Mein Code funktioniert, wenn der richtig angewendet wird. Siehe Kommentare oben.
Knackpunkt ist, den Fokus auf dem akt. DS ( aktuelle Angebots_Nr) zu halten, bzw. überhaupt zu setzen. Wenn ein Button im Kopfbereich oder woanders als im Detailbereich des UF liegt, wird der Focus aus keinen DS im Detailbereich gesetzt und damit ist auch kein akt. Angebot definiert.
Setze also den Druckbutton in den Detailbereich und wende meinen Code als Ereignisprozedur (mit etwas Anpassung an die Namen ) an,
oder nimm statt dem Klick-Ereignis eines solchen Button z. B. das Doppelklick-Ereignis des Textfeldes mit der Angebots_Nr (ein anderes Feld ginge auch)
Im UF:
Sub btnDrucken_Click()
Docmd.Openreport „rptDeinBericht“,acpreview,„Angebots_Nr=“ & Me!Angebots_Nr
End Sub
oder
Sub Angebots_Id_DblClick()
Docmd.Openreport „rptDeinBericht“,acpreview,„Angebots_Nr=“ & Me!Angebots_Nr
End Sub
Ich gehe davon aus, daß „Angebots_Nr“ in der Tabelle vom Datentyp Zahl,Long ist. Wenn Datentyp Text verwendet wird, dann müssen Hochkommata um den Kriteriumswert benutzt werden:
Docmd.Openreport „rptDeinBericht“,acpreview,„Angebots_Nr=’“ & Me!Angebots_Nr & „’“
Wäre super lieb
Isses das??? ;=)
Viele Grüße vom Bodensee
Franz , DF6GL
PS: Feedback erwünscht!