Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1672to1676
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

Textverschlüsselung mit VBA

Textverschlüsselung mit VBA
09.02.2019 17:25:01
kocius
Hallo Community,
bräuchte schon mal wieder Eure Hilfe.
Da geht um Text Verschlüsselung/Entschlüsselung.
In der Tabelle „Verschlüsseln“ in der Zeile B2 wird manuell ein beliebiger Klartext manuell eingegeben und in der Zeile B3 manuell ein beliebiger Kennwort eingetragen.
In der Zeile B4 wird mittels Buttons „Kennwort vereinfachen“ die mehrfachvorkommeden Buchstaben gestrichen.
Es müssen zwei Schritte programmiert werden
Schritt 1:
In der Tabelle1 ist die Spalte A fest definiert. In die Spalte B, ab Zeile B3 wird an das vereinfachten Kennwort („INTERSCH“) das Alphabet in umgekehrter Reihenfolge angehängt. Wichtig: die Buchstaben sollen in der Spalte B nicht wiederholen und nur einmal in der Spalte B vorkommen. D.h.: wenn die Buchstabe N schon im vereinfachten Kennwort ist („INTERSCH“), in dem Alphabet, das in umgekehrter Reihenfolge angehängt wird, soll die nicht mehr auftauchen (statt N kommt die nächstdrunterliegende Buchstabe M). So wird eine Spalte mit Geheimtext erzeugt.
Schritt 2:
Anhang vom dem Geheimtext (Tabelle1, Spalte B) soll der Klartext (Tabelle „Verschlüsseln“, Zeile B2) verschlüsselt und wieder entschlüsselt werden. Die Ergebnisse kommen dann in die Tabelle „Verschlüsseln“ Zeilen B5/B6
Hatte schon was programmiert, leider komme nicht richtig weiter mit Arrays.
Würde über Eure Hilfe sehr freuen!
Anbei die Datei:
https://www.herber.de/bbs/user/127533.xlsm

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zweck?
09.02.2019 18:08:07
Fennek
Hallo,
der Ansatz ist schon besser als "Caesar" (Rot-x), aber noch lange keine ernsthafte Verschlüsselung.
Wenn es eine Programmierübung oder ein Spiel für einen Kinder- (besser: Teenie)-Geburtstag ist, sollte es möglich sein, den Code zum Laufen zu bringen.
mfg
AW: Zweck?
09.02.2019 19:18:43
kocius
Hallo,
ist eine Aufgabe von einem Kumpel, hat nix mit CIA zu tun;)
Gruss
AW: VBA
09.02.2019 21:01:19
Fennek
Hallo,
hier der Vorschlag zum Codieren des "Plain Text" Pt in die "Cipher" Ci und zurück.
Sub Codieren()
Dim Pt As String, Ci As String
Pt = Cells(2, 2)
Tb = Sheets("Code").Range("A3:B28")
For b = 1 To Len(Pt)
For i = LBound(Tb) To UBound(Tb)
If Mid(Pt, b, 1) = Tb(i, 1) Then Ci = Ci & Tb(i, 2)
Next i
Next b
Cells(5, 2) = Ci
End Sub

Sub Dekodieren()
Dim Pt As String, Ci As String
Ci = Cells(5, 2)
Tb = Sheets("Code").Range("A3:B28")
For b = 1 To Len(Ci)
For i = LBound(Tb) To UBound(Tb)
If Mid(Ci, b, 1) = Tb(i, 2) Then Pt = Pt & Tb(i, 1)
Next i
Next b
Cells(6, 2) = Pt
End Sub

mfg
Anzeige
AW: VBA
09.02.2019 21:02:13
Fennek

Sub Codieren()
Dim Pt As String, Ci As String
Pt = Cells(2, 2)
Tb = Sheets("Code").Range("A3:B28")
For b = 1 To Len(Pt)
For i = LBound(Tb) To UBound(Tb)
If Mid(Pt, b, 1) = Tb(i, 1) Then Ci = Ci & Tb(i, 2)
Next i
Next b
Cells(5, 2) = Ci
End Sub
Sub Dekodieren()
Dim Pt As String, Ci As String
Ci = Cells(5, 2)
Tb = Sheets("Code").Range("A3:B28")
For b = 1 To Len(Ci)
For i = LBound(Tb) To UBound(Tb)
If Mid(Ci, b, 1) = Tb(i, 2) Then Pt = Pt & Tb(i, 1)
Next i
Next b
Cells(6, 2) = Pt
End Sub

AW: VBA
10.02.2019 01:36:02
kocius
Hallo Fennek,
danke! mit Codieren/Decodieren hat super funktioniert! Leider klappt es nicht mit Shritt 1 (Alphabet absteigend sortieren, so das die Buchstaben, die vorhanden sind, soll er überspringen).
Anbei die Datei, die nicht wie gewünscht funktioniert:
https://www.herber.de/bbs/user/127539.xlsm
Anzeige
AW: VBA
10.02.2019 10:42:51
kocius
Danke, funktioniert perfekt! Wenn es geht, hätte noch eine kleine Anpassung (die letzte)
In der Spalte A sind einmal Leerzeichen und ein paar Ziffern. In der Spalte B leider klappt es nicht absteigend aufzubauen. In der Spalte C ist abgebildet, wie es sein muss.
Für die Anpassung bin ich sehr dankbar!
https://www.herber.de/bbs/user/127542.xlsm
erledigt
11.02.2019 11:42:15
kocius
Hallo Jungs, danke, hat sich erledigt. Bei Zahlen musste man die in Text umwandeln mit Cstr
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige