Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1076to1080
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Datei soll sich selbst unbrauchbar machen

Datei soll sich selbst unbrauchbar machen
25.05.2009 23:55:39
Jörg
Hi liebe Gemeinde
ich ärgere mich öfters, daß bei Ausschreibungen einige Anbieter unser blatt- und mappengeschütztes Formular knacken und dann irgendwas hineinschreiben, das wir zeitraubend von Hand nachbearbeiten müssen.
Könnte man einen Code basteln, der dafür sorgt, daß beim Versuch, die Datei zu knacken - oder noch besser erst hinterher beim Speichern der geknackten Datei - diese sich selbst unbrauchbar macht? ...also zB das gesamte Formular leert mit einem freundlichen Hinweis, doch bitte ein neues anzufordern...
Herzlichen Dank für Ideen...
Jörg

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei soll sich selbst unbrauchbar machen
26.05.2009 00:46:45
Josef
Hallo Jörg,
vergiss das!
warum versendet ihr das Angebot nicht als PDF?
Oder setzt eine Schreibschutzkennwort auf die Datei, das lässt sich nicht so einfach knacken.
Gruß Sepp

AW: Datei soll sich selbst unbrauchbar machen
26.05.2009 01:02:26
hary
Hallo Jörg
nix ist sicher in Excel. Hab mal was gebastelt. Blattschutzkennwort ist: test
Im Umrahmten Bereich kann geschrieben werden, nimm dann den schutz raus und schreib was ins umrahmte. Aber ist nur ne Spielerei also knackbar.
https://www.herber.de/bbs/user/62036.xls
Der Code:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If ActiveSheet.ProtectContents = False Then 'wenn Schutz aufgehoben
Range("A1:C20").Clear                        'Bereich loeschen nur beispiel
ActiveWorkbook.Save                          'Mappe sichern
End If
If ActiveSheet.ProtectContents = True Then   'wenn geschuetzt
Exit Sub                                       'tue nix
End If
MsgBox "neues Formular anfordern"
ActiveWorkbook.Close                         'Mappe schliessen
End Sub


Gruss Hary

Anzeige
AW: ja, so ähnlich meinte ich das...
26.05.2009 01:21:10
Jörg
Hi Hary,
Beim ersten Versuch dauerte dein Code endlos, obwohl es doch eigentlich nur um ein paar zig Zellen ging. Bei einem zweiten Versuch stürzte Excel ab. Woran mag das beides liegen...?
aber so in etwa dachte ich mir das... vielleicht lieber in ein anderes Ereignis legen, zB Workbook_save statt WS_Change?
andere Möglichkeiten....
26.05.2009 01:34:17
Jens
...gibt es auch, Jörg.
z.B. Dateneingabe nur über eine Userform möglich (Blatt über VBA ausblenden).
Nur eins ist sicher: In Excel ist NICHTS sicher ;o)
Wer die Datei knacken will, der schafft das auch (früher oder später).

pdf geht nicht, weil was hineingeschrieben werden soll


Man kann mit Adobe auch pdf-Formulare erstellen, die man ausfüllen kann.
Gruß aus dem Sauerland
Jens

Anzeige
AW: Datei soll sich selbst unbrauchbar machen
26.05.2009 01:16:48
Jörg
Hi Sepp,
pdf geht nicht, weil was hineingeschrieben werden soll. Schreibschutz geht auch nicht aus dem gleichen Grund. Ich will ja nicht 'ne Mappe schützen (das hab ich ja schon), sondern den Neunmalklugen höflich, aber eindringlich das Knacken verleiden...
Gruß Jörg
AW: Datei soll sich selbst unbrauchbar machen
26.05.2009 02:08:19
hary
Hallo Jörg
Mit dem Code wird nichts geloescht.Setz diesen mal in meine Mappe. Sobald der Schutz aufgehoben ist erscheint eine MsgBox, anschliessend wird dieMappe ohne Speichern geschlossen(also bleibt der Ursprungs Zustand erhalten).

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If ActiveSheet.ProtectContents = False Then 'wenn Schutz aufgehoben
MsgBox "Sie versuchten das Formular zu knacken" & Chr(10) & " Formular erneut öffnen"
ActiveWorkbook.Close SaveChanges:=False   'Mappe wird ohne speichern geschlossen
End If
If ActiveSheet.ProtectContents = True Then   'wenn geschuetzt
Exit Sub                                       'tue nix
End If
End Sub


Gruss Hary

Anzeige
AW: Hi Leute, erstmal....
26.05.2009 09:46:12
Jörg
...danke für eure Ideen. Ich hab das wohl nicht richtig rübergebracht: Ich will nicht 'ne Datei schützen - das hab ich schon, und mir ist klar, das man das ohne Probleme knacken kann, wenn man bissl mehr weiß als der Standard-Bürosachbearbeiter.
Ich will nur den Schlaumeiern, die meinen, Sie müßten unser Formular verändern (was uns viel Arbeit macht), dies durch einen Überraschungseffekt verleiden, indem ich umgekehrt ihnen dadurch Arbeit verursache - also z.B. die in einer halben Stunde mühsam in das geknackte Formular eingegebenen Daten abschieße... in der Hoffnung, daß sie das dann künfitg unterlassen.
Gruß - Jörg
Anzeige
AW: Eingabefelder mit Namen versehen und Addresse
26.05.2009 13:31:45
Daniel
HI
mal so als Idee was du prüfen könntest.
in diesem Beispiel sind die Eingabefelder mit Namen versehen.
vor dem Speichern wird geprüft, welche Zelladdresse die Eingabefelder haben
sollten sich die Eingabefelder verschoben haben, z.B. durch Einfügen oder Löschen von Zeilen, wird die Datei ohne Speichern geschlossen, dh. der Anwender kann seine Eingabe von vorne beginnen.
https://www.herber.de/bbs/user/62048.xls
die Fiesere Alternative wäre natürlich, das Blatt zu löschen und dann zu speichern, diese Variante steht im Kommentar.
allerdings kann der Anwender das ganze einfach durch deaktivieren der Makros verhindern.
Gruß, Daniel
Anzeige
AW: @hary
26.05.2009 09:49:50
Jörg
Hi Hary
das ist der Weg, den ich meinte. Ich kannte das ProtectContents nicht. Jetzt ist "nur" das Problem: Ich selbst muß später die Datei auch entsperren, um ggfs. offensichtliche Fehler zu korrigieren (zB vergessene Eingaben, Kommafehler, Punkt statt Komma usw). Wie kann ich VBA klarmachen, daß ich das Paßwort entsperren "darf"?
bis später - Jörg
mit Environ("Username") abfragen? owT
26.05.2009 10:30:19
robert
AW: mit Environ("Username") abfragen? owT
26.05.2009 12:41:58
hary
Moin Jörg
Wie Robert schrieb: zusaetzlich Schutz aufgehoben und UserName abfragen.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
'-------Schutz aufgehoben und Benutzername abfrage-------------
If ActiveSheet.ProtectContents = False And Environ("Username") = "Dein Com Username" Then
Exit Sub
End If
If ActiveSheet.ProtectContents = False Then 'wenn Schutz aufgehoben
MsgBox "Sie versuchten das Formular zu knacken" & Chr(10) & " Formular erneut öffnen"
ActiveWorkbook.Close SaveChanges:=False   'Mappe wird ohne speichern geschlossen
End If
If ActiveSheet.ProtectContents = True Then   'wenn geschuetzt
Exit Sub                                       'tue nix
End If
End Sub


Falls Du von Deinem Com den Namen nicht weisst ;-)


Sub Name()
MsgBox Environ("Username")
End Sub


Gruss Hary
Der Code muss schon ins Change Ereigniss, denn was ist, wenn derjenige vorm Speichern wieder ein Passwort setzt.

Anzeige
AW: Danke, Jungs, für die....
26.05.2009 19:23:15
Jörg
....vielen guten Anregungen!!! Hab dabei ja gleich wieder einiges VBA dazu gelernt. Ich werd' mit den Vorschlägen mal was basteln...
Schönen Abend an alle...!
LG - Jörg

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige