Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1480to1484
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

String in SHA256 konvertieren - VBA-Code

String in SHA256 konvertieren - VBA-Code
08.03.2016 13:42:27
mpb
Hallo,
in folgendem Archivthread habe ich einen von Nepumuk geposteten VBA-Code gefunden, mit dem ein String in SHA256 konvertiert werden kann.
https://www.herber.de/forum/archiv/1296to1300/1297184_VBA_Passwort_Verschluesselung.html#1297198
Leider habe ich von Klassen keine Ahnung. Deshalb meine Frage: Welchen Code muss ich in welche Module kopieren, damit das von Nepumuk erstellte Test-Makro läuft?
Besten Dank im voraus.
Gruß
Martin

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Du musst ein Klassenmodul anlegen, ...
08.03.2016 14:05:07
Luc:-?
…Martin,
das du in clsSHA256 (Nepumuk) oder CSHA256 (Original) umbenennst. In dieses muss der gesamte lange Code im 2.Kasten kopiert wdn. Der kurze Code im 1.Kasten kommt in ein normales StandardModul (falls du den Original-ModulNamen benutzt, muss Nepumuks Name durch den ersetzt wdn).
Anstelle von Nepumuks Bsp musst du eine Eingabe pgmmieren.
Gruß, Luc :-?
Besser informiert mit …

AW: Du musst ein Klassenmodul anlegen, ...
08.03.2016 14:36:22
mpb
Hallo Luc,
erstmal vielen Dank. Dann hatte ich den Code schon richtig verteilt, aber die Namen des Standard- und des Klassenmoduls nicht angepasst. Mein Klassenmodul heißt jetzt clsSHA256, das Standardmodul Modul1.
Nepumuks Testcode lautet ja:
Option Explicit
Public Sub Test()
Dim objCryptoClass As clsSHA256
Set objCryptoClass = New clsSHA256
Debug.Print objCryptoClass.SHA256("paul")
Set objCryptoClass = Nothing
End Sub

Er läuft jetzt einwandfrei durch, genauso wie folgender von mir erstellter Testcode:
Public Sub Test2()
Dim objCryptoClass As clsSHA256
Dim i As Integer
Set objCryptoClass = New clsSHA256
For i = 1 To 3
Cells(i, 2) = objCryptoClass.SHA256(Cells(i, 1))
Next i
Set objCryptoClass = Nothing
End Sub
Mir ist nur nicht klar, warum es funktioniert. Wieso steht in dieser Codezeile
Debug.Print objCryptoClass.SHA256("paul")
SHA256 und nicht clsSHA256 oder Modul1, d.h. der Name des Standard- oder Klassenmoduls? Mir ist die Referenzierung noch nicht klar, vielleicht kannst Du mir das noch einmal erläutern.
Vielen Dank!
Gruß
Martin

Anzeige
Debug.Print war für den Test bestimmt, ...
08.03.2016 15:25:14
Luc:-?
…Martin,
und gibt das Kryptisierungsergebnis ins Direktfenster aus (das musst du im VBE aktivieren).
Mit deiner TestRoutine durchläufst du 3 Zellen und übergibst ihren Inhalt der öffentlichen (Public) Fkt SHA256 des deklarierten Objekts, das sich auf das Klassenmodul bezieht, d.h. auf eine neue (New) Instanz desselben referenziert.
Nebenbei, der VBE-Intellisense zeigt dir bestimmt diese Fkt an, wenn du nach dem Namen des deklarierten und geSetzten Objekts einen Pkt schreibst.
Gruß, Luc :-?

Danke! (owT)
08.03.2016 22:43:03
mpb
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige
Archiv - Verwandte Themen
Forumthread
Beiträge