Clever-Excel-Forum

Normale Version: Nur 1x Klick in Zelle erlaubt!!
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo,

ich habe eine Tabelle in der nach Feierabend auf einen Button geklickt werden muß.
Dann wird in einem Sicherungsordner ein PDF erstellt, gespeichert und gleichzeitig wird das Dokument ausgedruckt.

Soweit die Theorie!

Leider ist es in der Praxis anders, da es etwas dauert bis der Drucker anspringt, ist es schon so oft vorgekommen, das die Mitarbeiter dann relativ oft auf diesen Button klicken und wir immer alles x bis 10-fach ausgedruckt und gespeichert haben.

Meine Frage ist nun:
Kann man diesen Button mittels VBA so sperren, das man nur 1x klicken kann je 24 Std.?
Idealerweise mit einem MSG Info Fenster..."Hallo heute wurde schon gespeichert. Vielen Dank!"
Hallo

Ja, sogar recht simpel, anbei der Codeschnipsel. Den setzt du direkt hinter dein Sub Druckauftrag, nur zwei Zeilen, und ganz oben kommt die Public Variable. Das wars, probier es bitte mal aus ....

mfg Gast 123

Code:
Public Drucken As String

Sub Druckauftrag()
If Drucken <> "" Then MsgBox Drucken: Exit Sub
Drucken = "Druckauftrag laeuft bereits, Danke"  'Dein Text, wie du willst!

'ab hier dein Druckprogramm

End Sub
Hallo Gast,

Da Du schneller warst, ... gelöscht :05:
Sorry das ich mich jetzt erst melde, war krank Angry
Vielen Dank für die Hilfe, habe den Code eingefügt aber...

Der Code funktioniert nicht, ich hatte auch in der eile geschrieben das das Dokument gleichzeitig ausgedruckt wird, das war falsch. Es wird nur eine PDF Sicherung erstellt.

Und die darf nur 1x in 24 Std ausgeführt werden.

Anbei mein Code zur PDF Sicherung!

Sub aktivesBlattToPdf()
  ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
  "C:\Users\info\Dropbox\Dokumente PDF\PDF Sicherung Tagesabschluß\2020\01\" & _
      Range("F5").Value & Format(Now, "DD.MM.YYYY.hh.mm.ss") & ".pdf", Quality:=xlQualityStandard, _
      IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
      False
MsgBox "Vielen Dank für deine PDF Speicherung!"
End Sub
Hallo,


Zitat:Der Code funktioniert nicht, 


das ist die denkbar zielführenste Beschreibung um ein aufgetauchtes Problem in den Griff zu kriegen.
.
Hallo







Sorry, da muss ich dem Kollegen aus dem Norden Recht geben, es waere besser gewesen den geaenderten Code hochzuladen.

Dann haette man sehen können was da nicht funktioniert. Ab morgen mache ich Pause im Forum. Bin dann mal weg, leckeres Kölsch trinken ...



mfg Gast 12
Hallo,

den Vorschlag von Gast in deinem Code eingebaut (habe nur den Variablentyp geändert).

Code:
Private bolBereitsAktiv As Boolean

Sub aktivesBlattToPdf()
   If bolBereitsAktiv Then MsgBox "Druckauftrag läuft bereits": Exit Sub
   bolBereitsAktiv = True
   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
   "C:\Users\info\Dropbox\Dokumente PDF\PDF Sicherung Tagesabschlu?\2020\01\" & _
       Range("F5").Value & Format(Now, "DD.MM.YYYY.hh.mm.ss") & ".pdf", Quality:=xlQualityStandard, _
       IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
       False
   MsgBox "Vielen Dank f?r deine PDF Speicherung!"
End Sub
Danke Steffi,
ich habe gleich Spätschicht und werde sofort testen und berichten. Danke euch allen für eure Hilfe!!!! :19:
Verwende in diesem Fall Application.Ontime

Schau mal:

https://www.snb-vba.eu/VBA_Application.OnTime_en.html
Hallo Steffi,
ich habe deinen Code eingebaut, aber es kommt Fehlermeldung 400!!

Ich glaube den code den du mir geschickt hast, passt eh nicht. Das ist aber mein Fehler, weil ich mich falsch ausgedrückt habe.

Ich möchte nur in der Tabelle verhindern, das man innerhalb von 24 Std 2x auf den Speichern Button Klicken kann. Das Ausdrucken soll nicht berücksichtigt werden!

Beispieltabelle dabei!
Seiten: 1 2