Hallo liebe Kings. Ich suche verzweifelt einen Weg, um aus einem Bericht eine Zeile (z.B. Name) anzuklicken und dann den richtigen Datensatz anzuzeigen. Per Makro komme ich entweder zum Anfang oder zum Ende eines Datensatzes, für das ist mein Wissen zu klein.
Hallo,
das geht mit einem Bericht nicht.
Nimm ein Formular zur Anzeige der Daten.
Hallo,
du kannst in der Berichtsansicht durchaus Klick-Ereignisse auswerten, aber wozu soll das gut sein? Warum zeigst du die Daten nicht in einem Formular an und die Details in einem weiteren, oder in einem Unterformular?
Hallo,
Zitatdu kannst in der Berichtsansicht durchaus Klick-Ereignisse auswerten,
geht das bei den neueren Versionen (>2003) ?
Hallo,
in den neueren Version gibt es zusätzlich zur "Seitenansicht" die "Berichtsansicht". Das ist ähnlich einer Formularansicht, bei der aber z. B. Gruppierungen und Berechnungen entspr. dem Berichtslayout beibehalten werden. Zusätzlich können weitere Ereignissse , z. B. Klicken auf Schaltflächen oder Felder verwendet werden.
Die Berichtsansicht nimmt keine Rücksicht auf die druckerabhängigen Eigenschaften.
Anfänglich hatte ich die Berichtsansicht eher abgelehnt, zwischenzeitlich habe ich aber dadurch manche Anforderungen besser lösen können.
Man könnte sagen:
Berichtsansicht: interaktives Hilfsmittel zur "Berichterstattung" (gegenüber anderen)
Seitenansicht: Hilfsmittel für den Papierausdruck
Es geht dabei um mehrere Listen in denen ich schnell zu dem Datensatz springen möchte. Hintergrund ist, ich brauche beim Bericht Person, Arbeitsstätte, Fahrzeug. Beim Bericht klicke ich dann auf Fahrzeug und sollte dann auf den Datensatz des Fahrzeuges, oder bei Person direkt zum Datensatz springen. Wäre euch sehr dankbar.
Hallo,
und warum machst Du das nicht mit einem Formular ?
Hallo,
ZitatBeim Bericht klicke ich dann auf Fahrzeug und sollte dann auf den Datensatz des Fahrzeuges, oder bei Person direkt zum Datensatz springen.
Das verstehe ich nicht.... ???
Es geht darum, wenn ich einen Bericht(z.b. mit Person, Fahrzeug,...) erstelle, der sehr lang sein kann, dass ich dann z.b. eine Person anklicke, ich dann direkt zu diesem Datensatz springen kann. sonst müsste ich jedesmal in der Tabelle danach suchen bis ich ihn habe. Es können sehr viele Personen und auch sehr viele Fahrzeuge sein. Gedanke sei Autoverleih, welche Person hatte Fahrzeug usw. klicke auf Person, zeige mir Stammdaten oder klicke auf Fahrzeug, zeige mit Fahrzeugdaten. Wie es mit einem Formular gehen soll, für das ist mein Wissen leider zu wenig.
Hallo,
zeige doch die Daten gleich im Formular an, wozu der Zwischenschritt über den Bericht ?
Hallo,
kann Klaus nur beipflichten: Mit einem Formular geht das bequemer und einfacher...
Zeige mal den Screenshot des Beziehungsfensters...
Ansonsten: erstelle ein Formular auf Basis der Personentabelle und öffne dieses Formular in der Doppelklick-Ereignisprozedur des Feldes ("PersID") , das die Person im Bericht anzeigt. (Ich unterstelle jetzt, dass die Tabellen(!) normalisiert sind und Primärschlüssel vom Datentyp Autowert, bzw, Zahl,Long verwendet werden:
Sub PersID_DblClick(Cancel As Integer)
Docmd.Openform "frmPerson",,,"PersID = " Me!PersID
End Sub
Wenn es nur den Namen (Feld "PersonName", Datentyp TEXT) gibt (hoffentlich nicht) , dann sollte es so lauten:
Sub PersonName_DblClick(Cancel As Integer)
Docmd.Openform "frmPerson",,,"PersonName = '" & Me!PersonName & "'"
End Sub
Die Ereignisprozedur erstellt man, indem im Berichtsentwurf das Namen-Feld markiert und im Eigenschaftenfenster der Reiter "Ereignisse" ausgewählt wird. Bei der Eigenschaft "Beim Doppelklicken" und Klick auf die 3 rechts stehenden Pünktchen wird der Rumpf der Ereignisprozedur erzeugt, sofern vorher "Code" gewählt wurde.
Danke an alle. Hat wunderbar funktioniert.