Readdy Write  
0,00 €
Your View Money
Views: Count
Self 20% 0
Your Content 60% 0

Users by Links 0
u1*(Content+Views) 10% 0
Follow-Follower 0
s2*(Income) 5% 0

Count
Followers 0
Login Register as User

Excel : Anonyme Nummern und Pseudonyme erstellen

04.12.2019 (👁1938)

Excel : Nummern Anonymizieren und Pseudonymizieren

Mit einer einfachen vba Function

Mit Excel Datei als Beispiel zum Download

Die folgende Excel Datei anonymisiert Daten anhand einer einmaligen Zufallszahl.

Anonymisierung:

Bei der Anonymisierung werden vertrauliche kritische Daten auf einen andere nicht einfach abzuleitende neue Ersatzbegriff geändert. Im einfachen Beispiel werden Nummern in neue andere Nummern verändert.

Bei der Verwendung von Verschlüsselungen kann der Einsatz von Hash Funktionen eingesetzt werden

Dabei wird die Zufallszahl einmalig initialisiert und anschließend auf Nummern angerechnet.

Bei der Anonymisierung von ID Nummern kann man keine Hash-Funktion in Excel vba anwenden, wenn man die Daten für weitere Aufgaben direkt verwenden will. Zum Beispiel in einer Datenbank, da man keine Buchstaben in Tabellenfelder vom Typ: Integer oder Long eintragen kann.

Manchmal muss man für Dubletten in sich referenzierende Nummernkreise wiedergeben.

Pseudonymisierung

Bei der Pseudonymisierung werden einem Begriff andere Begriffe zugeordnet. Das verhält sich wie das Tragen von Masken. Am einfachsten verändert man zum Beispiel Namens-Einträge mit der Kombination von Anonymer-Nummer Plus dem Text „Name“

Diese Excel-Datei verwendet eine Formel zur Umrechnung der Zellen.

Dabei kommt die Formel aus dem vba Makro =Anonymize_Number(original_Number)

Die Excel-Datei kann zu Test und Verwendungszwecken heruntergeladen werden.

Im vba Excel-Editor, Code Behind.

Code Beschreibung:

In der Function =Anonymize_Number(ByVal sInput As String) wird der Eingabewert mit einer Zufallszahl zur Laufzeit verändert.

Dabei wird die Zufallszahl zu Beginn einmalig mit der Klasse: Randomize und der Function Rnd(12345) erstellt und anschliessend in den aktiven Zahlenkreis portiert.

Excel vba Code

Zum Verwenden

Option Explicit

Public public_Random_Zahl As Long

Public Function Anonymize_Number(ByVal sInput As String)

    '--------------< Anonymize_Number() >--------------

    'Zugriff ueber Excel oder Access Tabelle als Funktion =Anonymize_Number()

    'veraendere eine IDNummer mit einem Random-Shift

    '< check >

    If public_Random_Zahl = 0 Then create_Public_Random_Number

    If sInput = "" Then Exit Function

    If Len(sInput) < 3 Then Exit Function

    '</ check >

    '< convert >

    'convert string to number (Excel numbers as string, from SAP)

    Dim long_Input As Long

    long_Input = CLng(sInput)

    '</ convert >

    Dim new_Number As Long

    new_Number = long_Input + public_Random_Zahl

    '< return >

    Anonymize_Number = new_Number

    '</ return >

    '--------------</ Anonymize_Number() >--------------

End Function

Public Function create_Public_Random_Number()

    '--------------< create_Public_Random_Number() >--------------

    'Init Zufallszahlen

    Randomize

    'bilde Zufallszahl

    Dim lngRandom As Long

    lngRandom = Rnd(10000) * 999999  '*eine Zahl von 0 bis 6 stellen

    'Public zuweisen

    public_Random_Zahl = lngRandom

    '--------------</ create_Public_Random_Number() >--------------

End Function