Registriert seit: 09.11.2022
Version(en): 2013
Hallo an alle !
Ich möchte gerne das bestimmte Zellen eines Tabellenblattes geleert werden, wenn dieses gedruckt wurde.
im VBA habe ich folgendes probiert:
Private Sub CommandButton1_Click() Druck = True ActiveSheet.PrintOut Range("M1,M6,M9").Value = "" End Sub
Leider funktioniert das nicht. Die Seite wird gedruckt aber die Zellen bleiben unverändert.
Gibt es noch Einstellungen die ich beachten muß ?
Gruß, Antidrug
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hi,
bei deinem eigentlichen Problemm kann ich nicht helfen. Aber hast du dir überlegt, wenn der Druck fehlerhaft ist, dass du dann leere Zellen hast und du dir diese erneut füllen musst? Wäre für mich einfacher, die Zellen per Hand (eventuell mithilfe von VBA) nach Kontrolle des Ausdrucks zu leeren.
Gruß Günter Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen. angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 23.09.2021
Version(en): 365
Hallo, versuche es mal hiermit: Code: Range("M1,M6,M9").Value = ClearContents
Registriert seit: 09.11.2022
Version(en): 2013
12.03.2023, 15:40
(Dieser Beitrag wurde zuletzt bearbeitet: 12.03.2023, 15:41 von Antidrug.)
Hallo Danke für die Antwort ! natürlich wäre das einfacher, aber das diese Tabelle auf Arbeit von mehreren Kollegen benutz und immer wieder verwendet wird funktioniert das leider nicht, da Menschen ja gerne bequem sind und die Zellen eben selbst nicht löschen
(12.03.2023, 14:09)rate mit schrieb: Hallo,
versuche es mal hiermit:
Code: Range("M1,M6,M9").Value = ClearContents
Funktioniert das auch mit verbundenen Zellen ? Ich glaube das ich das auch schonmal probiert hatte und genauso nicht funktionierte... Deswegen meine Vermutung das da eine Einstellung zu machen ist...
Registriert seit: 23.09.2021
Version(en): 365
Zitat:Funktioniert das auch mit verbundenen Zellen ? Wo steht etwas über verbundene Zellen??? Welche Zellen sind denn verbunden??? Und jetzt die 1.000.000 € - Frage - wieso probierst DU es nicht selbst aus???
Registriert seit: 02.05.2018
Version(en): Excel 365 & 2016
Also ich würde dir den Teufel an den Hals wünschen, wenn du über meine Daten so entscheidest, ob ich will oder nicht. Wenn man schon ungefragt Daten löschen will, dann zumindest mit Abfrage ja/nein oder beim Schließen der Mappe.
Schöne Grüße Berni
Registriert seit: 09.11.2022
Version(en): 2013
12.03.2023, 22:26
(Dieser Beitrag wurde zuletzt bearbeitet: 12.03.2023, 22:32 von Antidrug.)
(12.03.2023, 15:50)rate mit schrieb: Wo steht etwas über verbundene Zellen??? Welche Zellen sind denn verbunden???
Und jetzt die 1.000.000 € - Frage - wieso probierst DU es nicht selbst aus??? Ich habe es ausprobiert und die entsprechenden Zellen behalten ihre Eingabe ! Deswegen frage ich ja hier nach !
(12.03.2023, 19:38)MisterBurns schrieb: Also ich würde dir den Teufel an den Hals wünschen, wenn du über meine Daten so entscheidest, ob ich will oder nicht. Wenn man schon ungefragt Daten löschen will, dann zumindest mit Abfrage ja/nein oder beim Schließen der Mappe. Die Tabelle ist ein Formular, in dem die eingegeben Daten nur 1x zum Ausdrucken hebraucht wird. Da dieses Formular aber nicht entsprechend genutzt wird (löschen der Daten nach dem Drucken bzw. Schließen des Formular nach dem Drucken) und dadurch viele falsche Informationen auf den Ausdrucken gelandet sind, wurde dieser Schritt beschlossen ! Die Mappe ist schreibgeschützt und kann nicht überschrieben werden, und damit verschwinden die Eingaben beim Schließen. Die Ja/Nein-Abfrage ist aber ein guter Hinweis falls man nach dem Druck noch einen Fehler entdeckt hat, den man korrigieren will.
Registriert seit: 23.09.2021
Version(en): 365
.... dann hier die nächsten Fragen:
Wieso hast du dann nicht gleich erwähnt, das es verbundene Zellen gibt? Wieso hast du nicht gleich gesagt, das du es schon probiert hast und ein negatives Ergebnis erhalten hast? Wie lange sollen wir eigentlich noch raten, bevor du eine Musterdatei erstellst und hier einstellst???
zu der Nachverfolgbarkeit... du könntest die Daten ja auch in einer anderen Arbeitsmappe speichern und anschließend löschen....
Registriert seit: 09.11.2022
Version(en): 2013
13.03.2023, 08:31
(Dieser Beitrag wurde zuletzt bearbeitet: 13.03.2023, 08:37 von Antidrug.)
(12.03.2023, 23:55)rate mit schrieb: .... dann hier die nächsten Fragen:
Wieso hast du dann nicht gleich erwähnt, das es verbundene Zellen gibt? Wieso hast du nicht gleich gesagt, das du es schon probiert hast und ein negatives Ergebnis erhalten hast? Wie lange sollen wir eigentlich noch raten, bevor du eine Musterdatei erstellst und hier einstellst???
zu der Nachverfolgbarkeit... du könntest die Daten ja auch in einer anderen Arbeitsmappe speichern und anschließend löschen.... wer lesen kann ist klar im Vorteil ! Ich hatte eingangs geschrieben das es nicht funktioniert hat ! Und das verbundene Zellen so anspruchsvoll sind wa rmir nicht klar deswegen habe ich sie nicht erwähnt. Und ich bitte um einen freundlicheren Ton ! Wenn man mehr Informationen braucht muß man nicht gleich anfeinden . Das bringt niemanden etwas....
Um es nochmal zu verdeutlichen: Die Tabelle ist quasi ein Blatt zum Ausfüllen (ähnlich wie ein Steuerformular, nur nicht so kompliziert und umfangreich ) Es gibt Felder in denen Informationen eingetragen werden können um dann das gesamte Blatt ausdrucken zu können. Nach dem Ausdruck sollen genau diese Felder wieder geleert werden um zu verhindern das noch dort stehende und falsche Infos auf dem nächsten Druck erscheinen ! Wenn eine Beispiel-Datei gebraucht wird, müßte ich erst eine basteln, da es sich um Betriebsrelevante Infos handelt...
Grüße, Antidrug "Haben Sie eine Lösung, oder sind sie selbst das Problem ?"
26865
Nicht registrierter Gast
(13.03.2023, 08:31)Antidrug schrieb: wer lesen kann ist klar im Vorteil ! ... Und ich bitte um einen freundlicheren Ton ! Das gilt für dich genauso. Man kann sich Fehler auch einfach mal eingestehen - selbst wenn man vorher nicht ahnen konnte, dass es Fehler sind. Code: Option Explicit
Private Sub CommandButton1_Click() 'Druck = True 'ActiveSheet.PrintOut Dim r As Range For Each r In ActiveSheet.Range("M1,M6,M9") r.MergeArea.ClearContents Next r End Sub
|