Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

Berichte in Access





Frage

Hallo zusammen, ich hab eine Access DB mit mehreren Tabellen. Die Inhalte will ich nun irgendwie auswerten lassen. Am besten wäre es wenn der Anwender nur auf einen bestimmten Bericht klicken muss, dann wählt er aus was er sehen will (z.B. Kunde 2 und Kunde 3) und dann diese ausgewählten Kunden aufgelistet bekommt. Für den Anwender sollte das alles am besten Z sein ohne das dieser irgendwelche SQL Kenntnisse etc. braucht. Kann ich in Access so etwas realisieren ? Muss ich hierzu extra etwas programmieren oder reicht es wenn ich SQL etc. kann ? Danke für Eure Hilfe

Antwort 1 von oliverV

Hallo Horst,

so was ist machbar, allerdings kann es sehr aufwendig werden.
Erstelle ein Auswahlformular, in dem sich der Anwender die verschiedenen Kriterien für seinen Bericht zusammenbauen kann.
Wenn es darum geht ob ein Feld angezeigt werden soll oder nicht, kannst du das einfach mittels Kontrollkästchen lösen.
Wenn du allerdings Filter bzw. Bedingungen setzten willst, verwende ungebundene Kombifelder, bei denen du z.B. den Kunden auswählst, bei mehreren Kunden ein Listenfelder.
Sortierungen kannst du am Besten über Optionsgruppen lösen.
Erstelle nun eine Schaltfläche zum Öffnen des Auswertungsformulare oder des Berichts.

Beim Öffnen des Formulars (Berichts) muss du nun die Datenherkunft anhand der ausgewählten Kriterien dynamisch zuweisen.

Dim SQL1 As String, SQL2 As String, SQLges As String
If Forms![Auswahlformular]![Feld1] = 1 Then
SQL1 = “SELECT DISTINCTROW Tabelle1.Feld1, bla, bla”
Else
SQL1 = “SELECT DISTINCTROW Tabelle1.Feld2, blub, blub”
End If

If Forms![Auswahlformular]![Sortierfeld1] = 1 Then
SQL2 = “ORDER BY bla, bla”
Else
SQL2 = “ORDER BY blub, blub”
End If

SQLges = SQL1 + SQL2

Form_Formularname.RecordSource = SQLges


So kannst du dir die gesamte Datenherkunft zusammenbauen, aber ich warne dich, es kann wirklich sehr aufwändig werden. Ich habe eine Produktionsdatenauswertung gemacht, bei der ich über 70 Variablen benötige um mein SQL-Statement zusammenzubauen. (Allerdings auch mit monatlicher Gruppierung).
Wenn du dir Felder nur teilweise anzeigen lassen willst, ist es wahrscheinlich auch notwendig, die Feldpositionen, anhand der ausgewählten Kriterien, zu verändern.

Me.Feld1.Left = 2154
Me.Feld1.Top = 3855
Maßangaben musst du in Twips machen (1 cm = 567 Twips)

Du siehst also, du kommst um gewissen VBA-Vorkenntnisse nicht herum.

Gruß

Oliver


Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: