Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Kopierschutz einer Mappe





Frage

Guten Morgen Excel-Helfer, ich habe eine Excel-Mappe, auf die man jederzeit zu greifen darf, jedoch darf sie nicht kopiert werden. Kann ich diese Mappe irgendwie (je einfacher desto besser) vorm Kopieren schützen? Oder wie kann ich es dem "Kopierer" erschweren? Vielen Dank im Voraus für Eure Hilfe. Gruß Bernie

Antwort 1 von Event

Hallo

Wasch mir den Rücken aber mach mich nicht Nass!
Das wird wohl nicht gehen.

Gruß

Antwort 2 von coros

Hallo Bernie,

so einfach die Datei vor dem Kopieren zu schützen geht nicht. Da kann man nur versuchen das ganze durch z.B. einen VBA Code zu erschweren. Man könnte z.B. Berechtigungen setzen, auf welchem PC die Datei geöffnet werden darf und wer dort die Datei öffnen darf. Mit nachfolgendem Makro wird Dir der Computername in Zelle A3 und der Benutzername in Zelle C3 aufgelistet. Beim Öffnen der Datei werden die beiden Namen überprüft. Wenn diese beiden Namen nicht mit den beiden Namen in dem Makro übereinstimmen, wird die Datei wieder geschlossen. Kopiere den nachfolgenden Code in ein StandardModul.

Option Explicit

Declare Function GetComputerName& Lib "kernel32" Alias _
"GetComputerNameA" (ByVal lbbuffer As String, nSize As Long)
Declare Function GetUserName Lib "advapi32.dll" _
Alias "GetUserNameA" (ByVal lpBuffer As String, _
nSize As Long) As Long

Sub Computername_und_Username_ermitteln()
Dim Benutzername As String * 100, Benutzernamenlänge As Long, _
PC_Name As String * 64
Range("A3,C3").ClearContents
Call GetComputerName(PC_Name, 64)
Range("A3") = PC_Name
Benutzernamenlänge = 100
GetUserName Benutzername, Benutzernamenlänge
Range("C3") = Benutzername
If Range("A3") <> "PC-Name" Or Range("C3") <> "Berechtigter Benutzername" Then ActiveWorkbook.Close False
End Sub


Jetzt kopiere noch den nachfolgenden zweiten Code in das VBA Projekt diese Arbeitsmappe.

Private Sub Workbook_Open()
Computername_und_Username_ermitteln
End Sub


Du musst in dem Makro in der Zeile

If Range("A3") <> "PC-Name" Or Range("C3") <> "Berechtigter Benutzername" Then ActiveWorkbook.Close False

anstelle des Textes "PC-Name" den Namen Deines PC´s und anstelle des Textes "Berechtigter Benutzername" Deinen Namen eintragen, mit dem Du Dich an dem PC anmeldest.

Ich hoffe, das hilft Dir erst einmal weiter. Bei Fragen melde Dich.
Solltest Du nicht wissen, wie Du den Code in Deine Datei bekommst, dann schau mal auf meiner HP in der Rubrik Anleitungen und dort dann in der Anleitungsnummer 1, bzw. 3 nach. Dort stelle ich dazu eine bebilderte Anleitung zur Verfügung, die Dir sicherlich helfen wird.

MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: