Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Nur 1x Klick in Zelle erlaubt!!
#1
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!"
Antwortento top
#2
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
Antwortento top
#3
Hallo Gast,

Da Du schneller warst, ... gelöscht 05
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antwortento top
#4
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
Antwortento top
#5
Hallo,


Zitat:Der Code funktioniert nicht, 


das ist die denkbar zielführenste Beschreibung um ein aufgetauchtes Problem in den Griff zu kriegen.
.
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antwortento top
#6
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
Antwortento top
#7
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
Gruß Stefan
Win 10 / Office 2007
[-] Folgende(r) 1 Benutzer sagt Danke an Steffl für diesen Beitrag:
  • Gast 123
Antwortento top
#8
Danke Steffi,
ich habe gleich Spätschicht und werde sofort testen und berichten. Danke euch allen für eure Hilfe!!!! 19
Antwortento top
#9
Verwende in diesem Fall Application.Ontime

Schau mal:

https://www.snb-vba.eu/VBA_Application.OnTime_en.html
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antwortento top
#10
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!


Angehängte Dateien
.xlsm   Test Feierabend.xlsm (Größe: 112,5 KB / Downloads: 1)
Antwortento top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste