Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Bericht aus einem Formlar nur mit Datensätze eines bestimmten Datum drucken.

Frage Microsoft Microsoft Office

Mitglied: Blackangel

Blackangel (Level 1) - Jetzt verbinden

02.01.2007, aktualisiert 27.09.2007, 9881 Aufrufe, 22 Kommentare

Hallo,

ich versuche gerade einen Bericht aus einem Formular zu drucken(Über eine Schaltfläche). Dieser soll aber nur alle Datensätze von einem Datum drucken, das in einem Feld "Datum" steht.
Ist das überhaupt möglich?
Könnte man sowas auch über ein Popup machen?

Momentan habe ich folgendes im Code stehen:

DoCmd.OpenReport "Bericht", acViewPreview, , "Datum='" & Me!Datum

Das funktioniert aber natürlich nicht !
Mitglied: Dani
02.01.2007 um 17:44 Uhr
Hi,
also auf den richtigen Weg bist au auf jeden Fall.

So müsste es eigentlich gehen:
01.
DoCmd.OpenReport "Bericht",acPreview , , "Datum = '" & Me!Datum & "'"
Gruß
Dani
Bitte warten ..
Mitglied: Blackangel
02.01.2007 um 18:02 Uhr
Hallo,
leider haut es nicht hin.
Access gibt folgenden Fehler zurück:
"Datentyp in Kriterienausdruck unverträglich"

Leider habe ich schon ewigkeiten nicht mehr mit access gearbeitet, ich wette das ist irgendeine ganz einfach Sache!

Wie sieht das aus mit so einem Popup wäre sowas auch möglich?
Bitte warten ..
Mitglied: Dani
02.01.2007 um 18:08 Uhr
Hi,
was meinst du mit PopUp bzw. für welchen Zweck denn??


Dann probier's mal so:
01.
DoCmd.OpenReport "Bericht", acPreview, , "Datum =" & Me!Datum
´
Das ist nicht die Zeile von dir. Bei dir war noch ein " ' " drinne!


Gruß
Dani
Bitte warten ..
Mitglied: Blackangel
02.01.2007 um 18:37 Uhr
Hi,
leider passt das auch nicht diesmal folgender Fehler:
"Syntaxfehler in Zahl in Abfrageausdruck '(Datum=26.12.2006)'."

Mit Popup meine ich, das ein Fenster aufgeht sobald man auf die Schaltfläche klickt und hier kann man dann z.b. das Datum eingeben das nur von diesem Datum gedruckt werden soll.
Ich hoffe das war nicht kompliziert.
Bitte warten ..
Mitglied: Biber
02.01.2007 um 19:36 Uhr
Moin Blechengel,

probier es mal bitte so:
DoCmd.OpenReport "Bericht",acPreview , , "Datum = #" & Me!Datum & "#"
-oder, etwas weniger fehlerträchtig-
DoCmd.OpenReport "Bericht",acPreview , , "Datum = #" & Format(Me.Datum, "dd.mm.yyyy") & "#"

HTH
Biber
Bitte warten ..
Mitglied: Blackangel
02.01.2007 um 21:47 Uhr
Hi,
also bei numero UNO tritt folgender Fehler auf:
Syntaxfehler in Datum in Abfrageausdruck'(Datum=#26.12.2006#)'.
bei numero zwei:
Das Gleiche nochmal!
Kann das irgendwie mit dem Bericht zusammenhängen?
Nurmal so am Rande?
Bitte warten ..
Mitglied: Biber
02.01.2007 um 21:55 Uhr
Hmmm, merkwürdig....

Nicht hauen, aber.... das Feld "Datum" ist auch ein Datumsfeld? Oder "nur" ein Prosa-Textfeld?

Ich würde jetzt erstmal im Abfrage-"SQL"-Editor die richtige Syntax ausprobieren.
So bockig kann doch nicht mal M$-Access sein...eigentlich...

Etwas ratlos
Biber
[Edit] sonst, was ich noch im Ärmel hätte, wäre..
01.
..., "datum=cdate(Me!Datum)"
[/Edit]
Bitte warten ..
Mitglied: Blackangel
02.01.2007 um 22:27 Uhr
Super hat geklappt. Echt klasse!
Nur zur Info wie jetzt der Befehl heißt:
stDocName = "Bericht"
DoCmd.OpenReport stDocName, acPreview, , "datum=cdate(Me!Datum)"

Wundert eucht nicht das ich jetzt eine stDocName gesetzt habe, ich habe nur etwas rumprobiert.

Eine Frage hätte ich danoch. Hier geht ja jetzt ein Fenster auf mit:
"Parameter Werte eingeben" und dann darunter
"Me!Datum" gibt es hier eine Möglichkeit das da "Bitte Datum eingeben" steht?
Bitte warten ..
Mitglied: Blackangel
03.01.2007 um 17:13 Uhr

Eine Frage hätte ich danoch. Hier geht
ja jetzt ein Fenster auf mit:
"Parameter Werte eingeben" und
dann darunter
"Me!Datum" gibt es hier eine
Möglichkeit das da "Bitte Datum
eingeben" steht?

Gibt es dazu eine Lösung oder geht das überhaupt nicht?
Wie sieht es eigentlich aus wenn ich das mit einem Datum von ... bis Datum haben will?

Gurß
Tim
Bitte warten ..
Mitglied: Blackangel
04.01.2007 um 12:15 Uhr
Sorry das ich etwas ungeduldig bin. Ich muss aber die erste Version der Datenbank bis zum Wochenende fertig bekommen.
Bitte sagt mir einfach ob sowas möglich ist oder nicht!
Bitte warten ..
Mitglied: Biber
04.01.2007 um 12:33 Uhr
Moin blackangel,

das sind doch aber noch Taaaaaaaage bis zum Wochenende...

M$-Access ist nicht mein Fachgebiet - da gibt es sicherlich im Forum einige, die da fitter sind.
Ich als Laie würde eine kleine briefmarkengroße SubForm mit zwei Eingabefeldern "VonDatum" und "BisDatum" vor den Report setzen.
Und nachdem beide Felder (geprüft) gefüllt sind, den Report aufrufen.
Das wäre die Strategie - Details kann ich nicht liefern.

Gruß
Biber
Bitte warten ..
Mitglied: Blackangel
04.01.2007 um 14:29 Uhr
Servus,

mit Subform nehme ich an meinst du Unterformular?
Wenn ja, dann haben wir schon den Salat da ich eigentlich kein Platz mehr für ein Unterformular habe.
Könnte man das evtl. mit zwei ungebundenen Felder machen? bzw. die zwei Felder füllen und dann auf Button klicken?

Gruß
Tim
Bitte warten ..
Mitglied: Biber
04.01.2007 um 14:53 Uhr
Moin blackangel,

Ja, ich meinete ein (hochpoppendes) Unterformular, aber selbstverständlich gehen auch zwei ungebundene Felder im offenen Formular.
Und die dann eben (sinngemäß) ansprechen über [HauptFormular]!VonDatum und [Hauptformular]!BisDatum.

Gruß
Biber
Bitte warten ..
Mitglied: Blackangel
04.01.2007 um 16:00 Uhr
Hi,
also ich habe jetzt mal zwei ungebundene Felder erstellt dazu eine Schaltfläche:
Jetzt bräuchte ich nur noch den passenden Befehl dazu. Soweit bin ich gekommen habe aber wieder ma ne Fehlermeldung

>DoCmd.OpenReport stDocName, acPreview, , [where "datum=cdate(Me!Datum)" between (Me!vondatum) And (Me!bisdatum)]

Ich glaube ich habe falsch angesetzt oder?
Bitte warten ..
Mitglied: Biber
04.01.2007 um 16:13 Uhr
aber wieder ma ne Fehlermeldung
Eher eine allgemeine, die Du ohne zu Lesen weggeklickt hast, oder stand etwas für uns Mitleser interessantes drin?

Mein Ansatz wäre ja, im Click-Ereignis der Schaltfläche
- prüfen, ob VonDatum und BisDatum gefüllt und plausibel sind
- wenn ja, den Report anschubsen mit der Zeile wie oben gepostet.

Wie sieht denn Dein Aufruf aus?

Biber
Bitte warten ..
Mitglied: Blackangel
04.01.2007 um 16:30 Uhr
Fehler ist:
"Microsoft Access kann das in Ihrem Ausdruck angesprochene Feld "|" nicht finden."

Ich habe aber kein Feld mit "|" angegeben.
Wie sähe den die Plausibilitätsprüfung aus von daher habe ihc momentan noch keine Ahnung bzw. mir fallen die Befehle nicht ein!
Ganz vergessen vorhin!
Mein Aufruf lt.:
DoCmd.OpenReport stDocName, acPreview, , [where "datum=cdate(Me!Datum)" between (Me!vondatum) And (Me!bisdatum)]
Bitte warten ..
Mitglied: Biber
04.01.2007, aktualisiert 24.05.2012
Ist doch schon nah dran, blackangel,

ich hab vorhin auf dem Spiel-PC meiner Tochter tatsächlich noch ein M$-Access gefunden (zwar ein 2000er, aber schon in bunt).
Und Folgendes getan:
- eine Tabelle "BlechEngel" angelegt mit einem Datumsfeld "Testdatum" und einem Textfeld "Ereignis"
- Standard- Bericht dazu anlegen lassen über den Assistenten/die Assistentin
- Standard- Formular dazu anlegen lassen
- Da zwei Felder "VonDatum" und "Bsdatum" (leider mit diesem Tippfehler ohne "i") reingekloppt und eine Schaltfläche
- Mich bei der Schaltfläche wieder beraten lassen von diesem Stützräder-Krams und folgenden Code für das Schaltflächen-Click-Ereignis erhalten:
01.
Private Sub Bericht_Click() 
02.
On Error GoTo Err_Bericht_Click 
03.
    Dim stDocName As String 
04.
    stDocName = "BlechEngel" 
05.
     
06.
    DoCmd.OpenReport stDocName, acPreview 
07.
 
08.
 
09.
Exit_Bericht_Click: 
10.
    Exit Sub 
11.
 
12.
Err_Bericht_Click: 
13.
    MsgBox Err.Description 
14.
    Resume Exit_Bericht_Click 
15.
     
16.
End Sub
Den habe ich minimal erweitert auf
01.
Private Sub Bericht_Click() 
02.
On Error GoTo Err_Bericht_Click 
03.
    Dim stDocName As String 
04.
    stDocName = "BlechEngel" 
05.
 If Not (IsNull(CDate(Me.VonDatum))) And Not IsNull(CDate(Bisdatum)) Then 
06.
    MsgBox "Zeitraum:" & CDate(Me.VonDatum) & " bis " & CDate(Me.Bsdatum) 
07.
 
08.
    DoCmd.OpenReport stDocName, acPreview, , _ 
09.
    "Testdatum>=CDate(' " & Me.VonDatum & "') and Testdatum<=CDate('" & Me.Bsdatum & " ')" 
10.
Else 
11.
     
12.
    DoCmd.OpenReport stDocName, acPreview 
13.
End If 
14.
 
15.
Exit_Bericht_Click: 
16.
    Exit Sub 
17.
 
18.
Err_Bericht_Click: 
19.
    MsgBox Err.Description 
20.
    Resume Exit_Bericht_Click 
21.
     
22.
End Sub
...und dann lief es.
In Deiner Abfrage sind zwei Dinge suboptimal:
- das Schlüsselwort "where" ist überflüssig
- innerhalb des Bericht, also wenn die Variablen aufgelöst werden, existiert ja kein Me!vondatum mehr, denn Me! würde ja dann auf "Bericht" zeigen.

However, hoffentlich hast Du Dich nicht übernommen mit dem Plan, bis zum Wochenende Access zu lernen..

Gruß
Biber
Bitte warten ..
Mitglied: Blackangel
04.01.2007 um 19:49 Uhr
Was soll ich dazu noch sagen!
Es hat geklappt! Super! Echt Geil!
Ich wollte nicht bis zum Wochende Access lernen nur diese eine Datenbank fertig bekommen bzw. ich hatte Zeit bis zum WE.
Access lernen werde ich jetzt erst noch ich habe schon ein paar Bücher von Access geordert, aber die sind leider noch nicht da!
Vielen tausend Dank. Echt super!
Wieder was dazu gelernt!
Bitte warten ..
Mitglied: Biber
04.01.2007 um 20:00 Uhr
Freut mich, blackangel,

dann hätten wir die Kuh ja erstmal vom Eis...

Nochmals aber die Anmerkung: Mit Access kenn ich mich nicht wirklich aus - ich habe es sicherlich umständlicher gemacht, als eigentlich nötig.
Also nimm es als erste Skizze - falls in den Büchern eine elegantere Lösung steht, wäre es nett, wenn Du diesen Thread nochmals ergänzt.

Und setz bitte den Beitrag auf "Gelöst", damit sich hier keiner umsonst durch unsere Trial-and-Error-Kommentare durchwühlen muss.
Gruß
Biber
Bitte warten ..
Mitglied: Untamed
27.09.2007 um 09:18 Uhr
Hi Leute,

Ich hab hier gerade gesehen das du (Biber) ziemliche ahnung von dem thema hast..
Ich verwende ungefähr den gleichen code wie du allerdings hab ich ein kleines problem...



Private Sub DatumBSuchen_Click()
On Error GoTo Err_DatumBSuchen_Click

Dim stDocName As String
Dim XDatum As String

stDocName = "Marketingbericht"

XDatum = "[erteilt am] >= CDate(' " & Me.VonDatum & "') and [erteilt am] <= CDate('" & Me.BisDatum & " ')"

If Not (IsNull(CDate(Me.VonDatum))) And Not IsNull(CDate(Me.BisDatum)) Then
MsgBox "Sie haben den Zeitraum von " & CDate(Me.VonDatum) & " bis " & CDate(Me.BisDatum) & " ausgewählt"

DoCmd.OpenReport stDocName, acPreview, , XDatum

Else

DoCmd.OpenReport stDocName, acPreview

End If

Exit_DatumBSuchen_Click:
Exit Sub

Err_DatumBSuchen_Click:
MsgBox Err.Description
Resume Exit_DatumBSuchen_Click

End Sub


Jetzt möchte ich noch zudem... auch noch die eintrage mit leerem 'erteilt am' feld in dem bericht sehen....

Wäre echt Super wenn mir jemand helfen könnte.


Danke im voraus

Gruß

Untamed
Bitte warten ..
Mitglied: Biber
27.09.2007 um 11:28 Uhr
Moin Untamed,

in diesem Fall brauchst Du nur die Bedingung so erweitern, dass auch Datensätze mit keinem [erteilt am]-Wert
oder auf accessisch " or [erteilt am] is null" mit in die XDatum-Klausel fallen.

Also in der Theorie (ungetestet):
01.
... 
02.
XDatum = "([erteilt am] is null) OR "  
03.
XDatum = XDatum & "([erteilt am] >= CDate(' " & Me.VonDatum & "') and [erteilt am] <= CDate('" & Me.BisDatum & " '))" 
04.
... 
Grüße
Biber
Bitte warten ..
Mitglied: Untamed
27.09.2007 um 13:59 Uhr
Hi Biber,

Oh man.. Ich danke dir! es geht.. Toll das es leute wie dich gibt die sich die zeit nehmen!

DANKE

Gruß

Untamed
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

(1)

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Drucker und Scanner
gelöst PCL-Drucker drucken nur Hieroglyphen (5)

Frage von diwaffm zum Thema Drucker und Scanner ...

Windows Server
Drucken via RDP, Papier kommt aus falschem Schacht

Frage von torcolato zum Thema Windows Server ...

Windows 10
gelöst Windows 10 - Datum und Zeitfehler bei Update (3)

Frage von swisstom zum Thema Windows 10 ...

Windows Userverwaltung
gelöst Datum einer Gruppenmitgliedschaft (1)

Frage von slansky zum Thema Windows Userverwaltung ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (13)

Frage von JayyyH zum Thema Switche und Hubs ...

DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...

Windows Server
Mailserver auf Windows Server 2012 (9)

Frage von StefanT81 zum Thema Windows Server ...