Visual Basic Buchstaben um stellen verschieben?

... komplette Frage anzeigen

2 Antworten

Du musst Buchstabe für Buchstabe aus dem String herausholen, den Asc-Wert ermitteln, drei dazuzählen und wieder in einen Character wandeln. Sieht dann so aus (VBA):

inputstring = "Hallo"

For i = 1 To Len(inputstring)
outputstring = outputstring & Chr(Asc(Mid(inputstring, i, 1)) + 3)
Next
MsgBox outputstring
Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Suboptimierer
28.05.2016, 18:11

Man müsste noch Klein- und Großbuchstaben unterscheiden. Ich würde einen Shift vornehmen (-65) und mit Modulo operieren, damit nach dem Ende des Alphabets wieder vorne angefangen wird.

2

Ganz einfach könntest du es realisieren, in dem du einen Array nimmst, der das Alphabet enthält. Dann loopst du durch den String und für jeden Buchstaben suchst du Position im Alphabet-Array (ich nenne sie jetzt hier p) und fügst einem neuen String den Inhalt des Werts an der Position p+3 hinzu.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von PWolff
28.05.2016, 18:40

Zusätzlich modulo Länge des Alphabets

1

Was möchtest Du wissen?