Supportnet / Forum / Datenbanken
zentrales Formular erstellen, das danach Abfragen einschränkt
Frage
Hallo,
gibt es die Möglichkeit "ein zentrales Formular" zu erstellen in dem "eine gesuchte lfd. Nummer" (automatisch) in mehrere Abfragen übertragen wird und man dann verschiedene Berichte aufgrund dieser verschiedenen, jetzt eingeschränkten Abfragen ausdrucken kann.
Freue mich über jede Antwort.
Gruß
Solu
Antwort 1 von Teddy7
gibt es. Allerdings verwendet man eher globale Variablen.
Dazu wird in Modul1 eine Variable als public definiert und dazu eine Public function, die diese Variable weitergibt.
Man kann nämlich in Abfragen nicht auf die globalen Variablen direkt zugreifen - wohl aber auf function, die diesen Wert enthalten.
Im Modul1 sieht das z.B. so aus:
Public xteamnr As Integer
Public Function fteamnr() As Integer
fteamnr = xteamnr
End Function
Die globale Variable kann im ganzen Programm gefüllt werden.
Gruß
Teddy
Dazu wird in Modul1 eine Variable als public definiert und dazu eine Public function, die diese Variable weitergibt.
Man kann nämlich in Abfragen nicht auf die globalen Variablen direkt zugreifen - wohl aber auf function, die diesen Wert enthalten.
Im Modul1 sieht das z.B. so aus:
Public xteamnr As Integer
Public Function fteamnr() As Integer
fteamnr = xteamnr
End Function
Die globale Variable kann im ganzen Programm gefüllt werden.
Gruß
Teddy
Antwort 2 von Solu
Hi Teddy,
also, das Modul hab ich angelegt.
Jetzt habe ich ein leeres Formular mit einem ungebundenen Textfeld und einen OK bzw. Cancel Button.
Wie kann ich denn jetzt die eingegebene Variable des Textfeldes in die Abfragen übertragen?
Und an welcher Stelle muß ich den Inhalt des Textfeldes mit der globalen Variblen verknüpfen?
Solu
also, das Modul hab ich angelegt.
Jetzt habe ich ein leeres Formular mit einem ungebundenen Textfeld und einen OK bzw. Cancel Button.
Wie kann ich denn jetzt die eingegebene Variable des Textfeldes in die Abfragen übertragen?
Und an welcher Stelle muß ich den Inhalt des Textfeldes mit der globalen Variblen verknüpfen?
Solu
Antwort 3 von Teddy7
Hi Solu !
Der OK-Button hat ein Ereignis(klick). Da drin kannst Du VBA-Programmierung hinterlegen:
DeineGlobale = DeinSelektionsfeld
In den betroffenen Abfragen kannst Du die function als einschränkendes Kriterium angeben (im Entwurfsmodus)
Gruß
Teddy
Der OK-Button hat ein Ereignis(klick). Da drin kannst Du VBA-Programmierung hinterlegen:
DeineGlobale = DeinSelektionsfeld
In den betroffenen Abfragen kannst Du die function als einschränkendes Kriterium angeben (im Entwurfsmodus)
Gruß
Teddy
Antwort 4 von Solu
Hi Teddy,
in der Abfrage konnte ich die Variable als Spalte einsetzen.
Aber im Formular klappt es nicht:
fteamnr ist die Variable
Text0 das Selektionsfeld
*****
Private Sub Befehl2_Click()
fteamnr = Text0
End Sub
*****
Gruß
Solu
in der Abfrage konnte ich die Variable als Spalte einsetzen.
Aber im Formular klappt es nicht:
fteamnr ist die Variable
Text0 das Selektionsfeld
*****
Private Sub Befehl2_Click()
fteamnr = Text0
End Sub
*****
Gruß
Solu
Antwort 5 von erik
Hallo,
ich würde grundsätzlich einen anderen Weg gehen, komplett ohne Funktion. Jeder Bericht kann beim Aufruf eine Bedingung entgegen nehmen, die sollte gefüttert werden.
Das hat den Vorteil, dass die darinliegende Abfrage keinen fest eingestellten Filter braucht und ggfs. auch alle Datensätze anzeigen kann.
Gruß
erik
ich würde grundsätzlich einen anderen Weg gehen, komplett ohne Funktion. Jeder Bericht kann beim Aufruf eine Bedingung entgegen nehmen, die sollte gefüttert werden.
DoCmd.OpenReport ReportName:="MeinBericht1", View:=acViewPreview, WhereCondition:="[FilterFeldInAbfrage]=" & Me.txtFilterDas hat den Vorteil, dass die darinliegende Abfrage keinen fest eingestellten Filter braucht und ggfs. auch alle Datensätze anzeigen kann.
Gruß
erik
Antwort 6 von Teddy7
Hi Solu !
Ist wirklich fteamnr die VARIABLE ? oder doch eher die function ?
Weil man in der Abfrage als Kriterium nur auf die function zugreifen kann und im Klick-Ereignis die Variable pflegt.
Gruß
Teddy
Ist wirklich fteamnr die VARIABLE ? oder doch eher die function ?
Weil man in der Abfrage als Kriterium nur auf die function zugreifen kann und im Klick-Ereignis die Variable pflegt.
Gruß
Teddy
Antwort 7 von Solu
Hi Teddy,
es hat geklappt!
Riesen großen herzlichen Dank!!!!!
Gruß
Solu
es hat geklappt!
Riesen großen herzlichen Dank!!!!!
Gruß
Solu

