Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Einen Wert automatisch zuweisen.
Gehe zu Seite 1, 2  Weiter
zurück: Mehrfach Filter Problem! weiter: Ausgabe Textfeld Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Rückfrage Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
gersti
Gast


Verfasst am:
26. Jan 2007, 08:30
Rufname:

Einen Wert automatisch zuweisen. - Einen Wert automatisch zuweisen.

Nach oben
       Version: Office 97

Hallo Zusammen,

nachdem ich mein Formular gefüllt habe lasse ich mir über ein Makro (durch Drücken eines Schalters) einen Bericht ausdrucken. Alles kein Problem.
Nun möchte ich aber, dass gleichzeitig mit Auslösen des Druckbefehls, automatisch das Datum/Zeit und ein Haken in die entsprechenden Felder der zugrundeliegende Tabelle eingetragen werden.
Ich habe versucht dies durch Erweitern des Makros mit "setzenWert" zu erreichen, aber ohne erfolg. Ich erhalte ständig die Meldung, dass das Objekt nicht das entsprechende Automatisierungsobjekt enthält [wenn ich die Funktion OHNE Gleichheitszeichen eingebe, also Datum()] oder der von ihnen eingegebene Ausdruck enthält eine unzulässige Zahl [wenn ich die Funktion MIT Gleichheitszeichen eingebe, also =Datum()].

Kann mir jemand eine Gedankenanstoß geben wie ich das Problem lösen kann?

Vielen Dank für Eure Hilfe.
Gruß
gersti
Gast



Verfasst am:
26. Jan 2007, 10:23
Rufname:


AW: Einen Wert automatisch zuweisen. - AW: Einen Wert automatisch zuweisen.

Nach oben
       Version: Office 97

Hallo Gersti,
ich mach das wie folgt im Bericht:
Code:
Private Sub Detailbereich_Print(Cancel As Integer, PrintCount As Integer)
    Dim datadb As DAO.Database
   
    Set datadb = CurrentDb
    On Error GoTo fehler_x1
    datadb.Execute "UPADTE [DerTabellenname] SET [DerFeldname] = True " & _
                    "WHERE ID = " & Me!ID
    datadb.Close
    Exit Sub
fehler_x1:
    Resume Next
End Sub
ID = Der eindeutige Datensatzbezeichner
Das Datum mit =Now() generieren
mfg
Thomas
derArb
getting better


Verfasst am:
26. Jan 2007, 10:29
Rufname: derArb
Wohnort: Berlin

AW: Einen Wert automatisch zuweisen. - AW: Einen Wert automatisch zuweisen.

Nach oben
       Version: Office 97

hallo Gerstie,

da enden dann die Möglichkeiten von Makros.
einfach das Kapitel Makros schliessen und abhaken, als nette Erfahrung.
Das ist eine Sackgasse!!!!
Versuch mal die Ereignisprozeduren zu erforschen.
Da hinein den code von Gast kopiert

mfg
derArb

_________________
MfG
derArb

Scio me nihil scire...Εν οίδα οτι ουδέν οίδα... Ich weiss, dass ich nichts weiss (Sokrates)
Ich bevorzuge Beiträge mit korrekter deutscher Grammatik.
gersti
Gast


Verfasst am:
29. Jan 2007, 14:35
Rufname:

AW: Einen Wert automatisch zuweisen. - AW: Einen Wert automatisch zuweisen.

Nach oben
       Version: Office 97

gersti am 29. Jan 2007 um 06:28 hat folgendes geschrieben:
Hallo zusammen,

sorry, dass die Reaktion so lange auf sich warten ließ.
Erst einmal vielen Dank für eure Hilfe!
Ich werde zum einen den Tipp berücksichtigen, keine Makros zu benutzen und zum anderen den VB-Code ausprobieren.

Melde mich dann!
Vielen Dank noch einmal!
Gruß
gersti

Hallo Thomas, hallo derArb,

so jetzt bin ich mal dazu gekommen. Wie so viele bin auch ich noch Anfänger, insbesondere was Ereignispro. angeht.
Daher auch meine Fragen:

An welcher Stelle wird den die Funktion =Now() eingetragen?

Im grunde habe ich ja nur einen Button der bis jetzt ein Makro aufruft und einen Bericht druckt. Ergebnis soll sein, dass bei Betätigen des Button der Bericht gedruckt wird, das Datum automatisch in die Tabelle eingetragen wird und sofern der Ausdruck noch einmal erfolgt (der Button also noch einmal gedrückt wird) ein Zähler um jeweils 1 erhöht wird, so dass man sehen kann wie oft ausgedruckt wurde.

Bis jetzt wird bei mir nur eine "0" im entsprechenden Feld eingetragen und da ich "bei Klicken" nunmehr die Ereignispro. aufrufe wird das Makro zum Berichtdrucken nicht mehr ausgeführt.

Sicher ist die Lösung wie so oft ganz einfach, nur sehen muss man sie:

Gruß
gersti
Willi Wipp
Moderator


Verfasst am:
29. Jan 2007, 15:54
Rufname:
Wohnort: Raum Wiesbaden


Re: Einen Wert automatisch zuweisen. - Re: Einen Wert automatisch zuweisen.

Nach oben
       Version: Office 97

Hi gersti,

das koennte dann etwa so aussehen
Code:
Private Sub Detailbereich_Print(Cancel As Integer, PrintCount As Integer)
    Const cstrTabelle As String = "DeineTabelle"
    Dim strSQL  As String
   
    On Error GoTo fehler_x1
    If DCount("*", cstrTabelle, _
              "[DeinDatum] Not Is Null AND [DeineID]=" & Me!DeineID) > 0 Then
        strSQL = "UPADTE " & cstrTabelle & " " & _
                    "SET [DeinZaehler] = Nz([DeinZaehler])+1 " & _
                  "WHERE DeineID = " & Me!DeineID
      Else
        strSQL = "UPADTE " & cstrTabelle & " " & _
                    "SET [DeinDatum] = Now() " & _
                       " [DeinZaehler] = 1 " & _
                  "WHERE DeineID = " & Me!DeineID
    End If
    CurrentDb.Execute strSQL
    Exit Sub
fehler_x1:
    Resume Next
End Sub

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)


Zuletzt bearbeitet von Willi Wipp am 31. Jan 2007, 16:14, insgesamt einmal bearbeitet
gersti
Gast


Verfasst am:
30. Jan 2007, 08:22
Rufname:

AW: Einen Wert automatisch zuweisen. - AW: Einen Wert automatisch zuweisen.

Nach oben
       Version: Office 97

Hallo Willi Wipp,

vielen Dank für deine Hilfe!
Bitte erlaube mir zwei Rückfragen.
Auf welches Ereignis lege ich die Ereignispro.?
Das Ereignis "bei Klicken" ist bereits für das Makro zum Berichtsausdruck belegt.
Wie sieht den eine Ereignispro. aus, welche im Grunde genau das gleiche macht wie ein Makro "Bericht xy drucken"?

Vielen Dank
gersti
Nouba
nicht ganz unwissend :)


Verfasst am:
30. Jan 2007, 08:54
Rufname:
Wohnort: Berlin

AW: Einen Wert automatisch zuweisen. - AW: Einen Wert automatisch zuweisen.

Nach oben
       Version: Office 97

Hallo,

ich würde eher dazu tendieren, das Druckdatum entweder im Beim Klicken Ereignis der Schaltfläche oder im Beim Öffnen Ereignis des Berichts in einem Durchgang zu verändern. Aus meiner Sicht erscheint das Ja/Nein-Feld zuerst einmal überflüssig zu sein, weil es mit dem Ausdruck Not IsNull([Druckdatum]) im Zweifelsfall nachgebildet werden kann.

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
Willi Wipp
Moderator


Verfasst am:
30. Jan 2007, 14:27
Rufname:
Wohnort: Raum Wiesbaden

Re: Einen Wert automatisch zuweisen. (II) - Re: Einen Wert automatisch zuweisen. (II)

Nach oben
       Version: Office 97

Hi gersti,

als Ereignis waere vom Bericht das Detailbereichs-Ereignis Beim Drucken (Print) zu verwenden.
Wenn ich es richtig sehe, dann zielt der Ansatz von Gast (Thomas) darauf ab,
bei jedem geduckten DS das Erstdruck-Datum zu erfassen.
Die Erweiterung erfasst dann die Anzahl der Ausdrucke je DS.

@Nouba, im Prinzip gebe ich Dir Recht,
wobei ich das Ereignis Beim Schliessen (Close) des Berichtes bevorzugen wuerde.
Hier wuerde ich einen Dialog einfuegen der abfragt ob Alles korrekt gedruckt wurde.
Dabei habe ich aber immer das Problem, wenn der Bericht mit WHERE-Klausel geoeffnet wird,
dann wird FilterOn nicht auf True gesetzt.
Hast Du dafuer eine Erklaerung (Workaround)?
Ich loese es in der Regel so das ich bei allen Berichten die Eigenschaft Filter loesche bevor ich sie speichere.
Code:
Private Sub Report_Close()
    Dim strSQL  As String
    Dim strAND  As String
   
    If MsgBox("Ausdruck OK?", vbYesNo) = vbNo Then Exit Sub
    If Nz(Me.Filter, "") <> "" Then      ' FilterOn geht nicht, warum s.u. ???
        strAND = " AND " & Me.Filter
    End If
    strSQL = "UPDATE DeineTabelle " & _
                "SET ZlDruckanzahl = ZlDruckanzahl + 1 " & _
              "WHERE DtErsterDruck Is Not Null"
    CurrentDb.Execute strSQL & strAND
    strSQL = "UPDATE DeineTabelle " & _
                "SET DtErsterDruck = Date(), " & _
                    "ZlDruckanzahl = 1 " & _
              "WHERE DtErsterDruck Is Null"
    CurrentDb.Execute strSQL & strAND
End Sub
'FilterOn ist undefiniert wenn der Bericht mit WHERE-Parameter geoeffnet wird.
'    DoCmd.OpenReport "DeinBericht", , , "DeineID=" & Me!DeineID

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)


Zuletzt bearbeitet von Willi Wipp am 31. Jan 2007, 16:07, insgesamt einmal bearbeitet
gersti
Gast


Verfasst am:
31. Jan 2007, 15:26
Rufname:

AW: Einen Wert automatisch zuweisen. - AW: Einen Wert automatisch zuweisen.

Nach oben
       Version: Office 97

Hallo Zusammen,

vielen Dank für eure Hilfe, aber ich muss gestehen, dass ich z.Z. den Wald vor Bäumen nicht sehe. Sad
Das liegt sicher auch daran, dass ich mich in Ereignisproz. erst reinarbeiten muss.
Ich habe einen Button, der wenn er gedrückt wird, den Ausdruck eines Berichts initiiert. Das was erreicht werden soll, ist der Ausdruck und das Setzen des Datums. Der Zähler ist erst einmal nicht primär, aber ein nettes Zubrot.
Soweit ich das bis jetzt verstanden habe, würde man den VBA-Code in eine Ereignisproz packen und diese ideallerweise mit dem Ereignis "beim Klicken" mit dem Button verbinden. Natürlich bin ich für jeden Lösungsansatz dankbar, nur weiß ich nicht, wo z.B. das Detailbereichs-Ereignis "beim Drucken" zu finden ist. Die Funktion heißt auch Report_Close.
Sorry, dass ich so auf dem Schlauch stehe!

Gruß
gersti
Willi Wipp
Moderator


Verfasst am:
31. Jan 2007, 16:14
Rufname:
Wohnort: Raum Wiesbaden

Re: Einen Wert automatisch zuweisen. (III) - Re: Einen Wert automatisch zuweisen. (III)

Nach oben
       Version: Office 97

Hi gersti,

fuer Dich war nur der 1. Teil des letzten Beitrags gedacht Wink
Der 2. Teil war mehr als allgemeine Diskussion mit Nouba gedacht.
Das Ereignis Beim Drucken (Print) findest Du in dem Bericht,
wenn Du den Detailbereich markierst und dann in den Eigenschaften unter Ereignisse schaust.
Fuer eine weitere Diskussion muesste man aber erstmal genau klaeren was Du jetzt erreichen willst.
Soll wirklich bei dem gedruckten Datensatz das Drucken separat vermerkt werden?
Wann soll das Datum gesetzt werden? Nur beim 1. Druck des Datensatzes?
Werden auch mehrere Datensaetze auf einmal gedruckt oder immer nur einer?
Soll (Muss) auch erfasst werden wenn der Bericht aus dem Datenbankfenster gedruckt wird?
Reicht es wenn nach bz. waerend des Druckens ein Fenster aufgeht wo man den erfolgreichen Ausdruck bestaetigt?
Oder soll immer davon ausgegangen werden das der Druck funktioniert hat?
Was passiert wenn jemand einen PDF-Druckertreiber einsetzt un in ein PDF druckt?
Das kann man ja dann beliebig oft ausdrucken ohne das die DB was davon mitbekommt...

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
gersti
Gast


Verfasst am:
01. Feb 2007, 15:01
Rufname:

AW: Einen Wert automatisch zuweisen. - AW: Einen Wert automatisch zuweisen.

Nach oben
       Version: Office 97

Hallo Willi Wipp,

kein Problem, ich bin ja für jede Hilfe dankbar.
Nun zu den Fragen:

1. Soll wirklich bei dem gedruckten Datensatz das Drucken separat vermerkt werden?
-> Es soll lediglich erreicht werden, dass später gesehen werden kann, DAS und WANN der Bericht gedruckt wurde.

2. Wann soll das Datum gesetzt werden? Nur beim 1. Druck des Datensatzes?
-> Am besten wäre eine Aktuallisierung wann der Druck das letzte mal erfolgte.

3. Werden auch mehrere Datensaetze auf einmal gedruckt oder immer nur einer?
-> Zu einem Kunden werden pro Monat (i.d.R. 12) in einem Unterformular entsprechende Antragsdaten eingegeben. Nach druck des "Druckbuttons" werden pro Monat Lieferscheine ausgedruckt.

4. Soll (Muss) auch erfasst werden wenn der Bericht aus dem Datenbankfenster gedruckt wird?
-> Sorry, aber die Frage verstehe ich nicht?

5. Reicht es wenn nach bz. waerend des Druckens ein Fenster aufgeht wo man den erfolgreichen Ausdruck bestaetigt?
-> Nein, da mein Chef sehen möchte (Tabelleneintrag) wann (Datum) der Lieferschein mit der Nr (xy) gedruckt wurde.

6. Oder soll immer davon ausgegangen werden das der Druck funktioniert hat?
-> Das der Ausdruck funktioniert hat können die Mitarbeiter ja sehen.

7. Was passiert wenn jemand einen PDF-Druckertreiber einsetzt un in ein PDF druckt?
-> Gute Frage! Smile

Vielen Dank! Muss jetzt zum Metting.
Gruß
gersti
Willi Wipp
Moderator


Verfasst am:
02. Feb 2007, 01:33
Rufname:
Wohnort: Raum Wiesbaden

Re: Einen Wert automatisch zuweisen. (IV) - Re: Einen Wert automatisch zuweisen. (IV)

Nach oben
       Version: Office 97

Hi gersti,

ich versuche mal zusammenzufassen was ich jetzt verstanden habe.
Du moechtest beim Drucken in jedem gedrucken Datensatz (Lieferschein)
das aktuelle Druckdatum gespeichert haben.
Das Datum soll nur gesetzt werden wenn der Bericht ueber das Formular ausgedruckt wird.
Eine Pruefung ob der Ausdruck erfolgreich war, bevor das Datum gesetzt wird ist nicht noetig.
==> Das Datum kann vor dem eigentlichen Ausdruck gesetzt werden.
Wie schaut der Befehl fuer den Ausdruck im Moment aus?
==> Die Prozedur hinter der Druck-Schaltflaeche.

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
gersti
Gast


Verfasst am:
06. Feb 2007, 08:26
Rufname:

AW: Einen Wert automatisch zuweisen. - AW: Einen Wert automatisch zuweisen.

Nach oben
       Version: Office 97

Hallo Willi Wipp,

sorry, dass ich mich erst jetzt wieder melde, war dienstlich unterwegs.
Hintergrund des ganzen ist, dass die Mitarbeiter irgendwann mal durcheinander kamen und nicht mehr wussten ob sie einen Lieferschein schon gedruckt hatten und wann das war. So kam mein Chef auf die Idee, ein zusätzliches Datenfeld in die entsprechende Tabelle zu integrieren und dort ein Datum automatisch eintragen zu lassen.
Ich gebe dir Recht, dass das Drücken des Buttons nicht bedeutet, dass der Ausdruck auch erfolgte. Kann man das irgendwie abfragen? Ansonsten kann das Datum auch sofort nach Drücken des Buttons eingetragen werden.
Zur Zeit verweist der Button nur auf ein Makro, welches den Bericht ausdrucken lässt. Mehr nicht.

Vielen Dank für die Unterstützung!
Gruß
gersti
Willi Wipp
Moderator


Verfasst am:
07. Feb 2007, 00:14
Rufname:
Wohnort: Raum Wiesbaden

Re: Einen Wert automatisch zuweisen. (V) - Re: Einen Wert automatisch zuweisen. (V)

Nach oben
       Version: Office 97

Hi gersti,

poste bitte mal den Code den Du fuer das Drucken verwendest.
Wenn es wirklich ein Makro ist, versuch mal es zu konvertieren,
dazu siehe Access Design:Makros konvertieren.
Gib bitte auch den Namen der Tabelle und der Felder an.

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
gersti
Gast


Verfasst am:
07. Feb 2007, 08:07
Rufname:


AW: Einen Wert automatisch zuweisen. - AW: Einen Wert automatisch zuweisen.

Nach oben
       Version: Office 97

Hi Willi Wipp,
Code:
Function b_schein_drucken()
On Error GoTo b_schein_drucken_Err
    DoCmd.OpenReport "b-schein", acNormal, "", _
                     "[kennziffer_einrichtung]=" & _
                                 "Forms![stammdaten]![kennziffer_einrichtung]"
b_schein_drucken_Exit:
    Exit Function
b_schein_drucken_Err:
    MsgBox Error$
    Resume b_schein_drucken_Exit
End Function
Der Bericht bekommt seine Daten aus zwei Tabellen (stammdaten und antragsdaten). Die im Bericht verwendeten Felder sind:

aus Tab. stammdaten:

kennziffer_einrichtung
name_einrichtung
name2_einrichtung
str_nr_einrichtung
plz_einrichtung
ort_einrichtung

aus Tab. antragsdaten:

lfdnr (ein autowert)
verbraucher_im_monat

ansonsten beinhaltet der Bericht nur noch die Funktionen (=CurrentUser() und (=[verbraucher_im_monat]*2).

Gruß
gersti
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Gehe zu Seite 1, 2  Weiter
Diese Seite Freunden empfehlen

Seite 1 von 2
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Wert von der Tabelle abziehen 1 elmar9700 892 10. Jul 2005, 22:22
stpimi Wert von der Tabelle abziehen
Keine neuen Beiträge Access Tabellen & Abfragen: Wert aus Textfeld für Abfrage auslesen 2 Sonic 6622 23. Jun 2005, 08:08
Sonic Wert aus Textfeld für Abfrage auslesen
Keine neuen Beiträge Access Tabellen & Abfragen: Listenfeld, automatisch erster Datensatz markieren 1 Gast 2958 21. Jun 2005, 11:54
rita2008 Listenfeld, automatisch erster Datensatz markieren
Keine neuen Beiträge Access Tabellen & Abfragen: Hochzählen ab bestimmten Wert 3 vitalik 893 06. Mai 2005, 12:47
stpimi Hochzählen ab bestimmten Wert
Keine neuen Beiträge Access Tabellen & Abfragen: Feld automatisch aktualisieren? (ähnlich DB-Trigger) 2 VizeTE 4290 20. Apr 2005, 12:57
blicki Feld automatisch aktualisieren? (ähnlich DB-Trigger)
Keine neuen Beiträge Access Tabellen & Abfragen: Überprüfen ob Wert in Tabelle = NULL 3 Cossack 1498 18. Apr 2005, 17:52
Gast Überprüfen ob Wert in Tabelle = NULL
Keine neuen Beiträge Access Tabellen & Abfragen: WHERE Wert Is manchmal Null 1 JTR 606 11. Feb 2005, 17:50
lothi WHERE Wert Is manchmal Null
Keine neuen Beiträge Access Tabellen & Abfragen: Automatische Aktualisierung von generiertem Wert im Formular 9 GandalfTCM 1041 09. Feb 2005, 17:40
lothi Automatische Aktualisierung von generiertem Wert im Formular
Keine neuen Beiträge Access Tabellen & Abfragen: Sie wollten den Null-Wert einer Variablen zuweisen, die ... 0 cmaier 4270 09. Feb 2005, 09:45
cmaier Sie wollten den Null-Wert einer Variablen zuweisen, die ...
Keine neuen Beiträge Access Tabellen & Abfragen: Wert übernehmen von einem Formular in das andere 2 mactoolz 1244 03. Feb 2005, 17:46
ralphkr Wert übernehmen von einem Formular in das andere
Keine neuen Beiträge Access Tabellen & Abfragen: Daten aus Abfrage automatisch in Tabelle aktualisieren 4 Christian22 4080 15. Jan 2005, 13:13
Christian22 Daten aus Abfrage automatisch in Tabelle aktualisieren
Keine neuen Beiträge Access Tabellen & Abfragen: Änderungsdatum automatisch eintragen 4 NN 2380 13. Jan 2005, 14:04
NN Änderungsdatum automatisch eintragen
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Word Serienbriefe