Excel: ein Feld soll einen Druck-Counter enthalten

Hallo,

mir wurde gerade eine Frage gestellt, die ich selber nicht so recht beantworten konnte:

Ein Feld soll eine Zahl enthalten, die mit jedem Ausdruck des Blattes um eins erhöht wird.

Eigentlich eine ganz einfache Aufgabe, aber die Realiesierung ist mir so aus der Kalten nicht möglich. Gibt’s da irgendeine vorgefertige Geschichte, die man nutzen könnte? Oder hat jemand einen Makro-Tip? Letzteres hätte ich unter Nutzung des Feldes „Print date“ oderso versuchen wollen, aber das scheint es nur in Word zu geben.

Danke,
Kristian

Hi Kristian,

ganz einfach: schreib unter VB in „DieseArbeitsmappe“:

Private Sub Workbook_BeforePrint(Cancel As Boolean)
Range(„A1“) = Range(„A1“) + 1
End Sub

Nun wird vor jedem Print die Zelle A1 um 1 erhöht.

Gruß

Sculpture

ganz einfach: schreib unter VB in „DieseArbeitsmappe“:

Private Sub Workbook_BeforePrint(Cancel As Boolean)
Range(„A1“) = Range(„A1“) + 1
End Sub

Tja, wenn man dieses Ereignis (mit Namen) kennt …

Danke!
Kristian

Habs als VB-Neuling gleich ausprobiert.
Hat grundsätzlich auch funktioniert, aber die Zahl erhöht sich auch bei jedem anklicken der „Seitenansicht“ was ja nicht im Sinne des Erfinders ist.
Außerdem wird beim Schließen der Arbeitsmappe eine zu speichernde Änderung abgefragt, die eher verwirrend ist, wenn ich nur einen Ausdruck mache.

Wie kann man das abstellen.

gruesse he

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Tip
Hi Kristian,

Du brauchst es gar nicht mit Namen kennen, habe ich auch nicht :wink:
Geh einfach in VB, dann auf „DieseArbeitsmappe“ und wähle in der linken oberen Listbox „Workbook“ aus. Dann stehen in der rechten alle Ereignisse des Workbooks. Schnell und einfach …
Geht natürlich auch über die Online-Hilfe …

Gruß

Sculpture

… Schnell und einfach … Geht natürlich auch über die Online-Hilfe …

Und ich dachte, ich wäre schon 'ne Weile dabei … :wink:
Man lernt nie aus!

Kristian

Wie kann man das abstellen.

Was besseres als das hier fällt mir da auch nicht ein:

Private Sub Workbook\_BeforePrint(Cancel As Boolean)
Dim Klick As Integer
 Klick = MsgBox("Counter verändern?" & vbLf & vbLf & \_
 " +1 -1 +-0", \_
 vbYesNoCancel, "Druck-Counter")
 Select Case Klick
 Case vbYes
 Range("B2") = Range("B2") + 1
 Case vbNo
 Range("B2") = Range("B2") - 1
 End Select
End Sub 'Workbook\_BeforePrint