OffTopic - D1353 M17731LUNG - Text übersetzen
10.04.2015 21:54:37
Stef@n
jetzt mal zum WE ein Thema, was OffTopic ist
(möglicherweise in einem WINWORD-Forum besser ? angebracht)
Nur schätze ich das KnowHow hier in diesem Forum MEHR als ...
jetzt meine Idee / Frage:
Ich möchte gern einen Text quasi 'übersetzen' und dabei gewisse Buchstaben
> KleinBuchstaben in Grossbuchstaben umwandeln
> bestimmte Grossbuchstaben in bestimmte ZAHLEN umwandeln
Dass alles kann ich natürlich mit "=gross()" und "Suchen / Ersetzen" machen
(und diesen Code auch aufzeichnen)
nur hierbei wäre eine automatisierte Lösung (VBA ?) sicher besser.
Worum geht es genau: Text:
DIESE MITTEILUNG
DIENT ALS BEWEIS
DAFUER, WAS FUER
ERSTAUNLICHE DINGE
UNSER VERSTAND
LEISTEN KANN!
BEEINDRUCKEND!
AM ANFANG WAR'S
SCHWER, ABER
JETZT, IN DIESER
ZEILE LIEST ES DEIN
VERSTAND AUTOMATISCH
OHNE DARUEBER
NACHZUDENKEN,
SEI STOLZ DRAUF!
NUR BESTIMMTE
MENSCHEN
KOENNEN DAS LESEN.
WENN DU ZU DENEN
GEHOERST, DANN
TEILE DIESE BITTE.
DU DARST DAS GERNE KOPIEREN,
WENN DU AUCH ANDERE
DAMIT BEGEISTERN WILLST!!
soll umgewandelt in den Text:
D1353 M17731LUNG
D13N7 4L5 83W315
D4FU3R, W45 FU3R
3R574UNL1CH3 D1NG3
UN53R V3R574ND
L31573N K4NN!
8331NDRUCK3ND!
4M 4NF4NG W4RS
5CHW3R, 483R
J37Z7, 1N D1353R
Z31L3 L1357 35 D31N
V3R514ND 4U70M4715CH
0HN3 D4RU383R
N4CHZUD3NK3N,
531 570LZ DR4UF!
NUR 83571MM73
M3N5CH3N
KO3NN3N D45 L353N.
W3NN DU ZU D3N3N
G3HO3R57, D4NN
731L3 D135 81773.
DU D4RF5T D45 G3RN3 KOP13R3N,
W3NN DU 4UCH 4ND3R3
D4M1T 83G315T3RN W1LL5T!!
Coool, oder ? - DAS ist lesbar !?!!
- jetzt suche ich nach einem
Code (VBA), der den markieren
entsprechenden Text in einer
XLS-Tabelle die Übersetzung vornimmt.
Dabei sollen alle Kleinbuchstaben
in Grossbuchstaben und danach(oder direkt)
in die entsprechenden "Zahlen" umgewandelt werden.
Hier die Übersetzungs-Tabelle
a A 4
b B 8
c C C
d D D
e E 3
f F F
g G G
h H H
i I 1
j J J
k K K
l L L
m M M
n N N
o O 0
p P P
q Q Q
r R R
s S 5
t T 7
u U U
v V V
w W W
x X X
y Y Y
z Z Z
0 0 0
1 1 1
2 2 2
3 3 3
4 4 4
5 5 5
6 6 6
7 7 7
8 8 8
9 9 9
Diese (irgendwie geniale :) )
Darstellung, wie unser Hirn seehr schnell
einen Text trotz (Zahlen statt Text)
"übersetzen" kann, begeistert mich :)
Weitere Infos zu dem Thema gibt es auf
http://de.wikipedia.org/wiki/Leetspeak
----------------
Ein anderes bekanntes (!?!) Beispiel ist die
Möglichkeit, in Wörtern die Buchstaben zu "verwirbeln"
"Analog" der anderen genialen Art
wie ein Text gelesen werden kann
wenn von einem Wort NUR der erste
und letzte Buchstabe eines Wortes an der korrekten
Stelle bleibt :))))
Ehct ksras! Gmäeß eneir Sutide eneir Uvinisterät,
ist es nchit witihcg, in wlecehr Rneflogheie
die Bstachuebn in eneim Wort snid, das ezniige
was wcthiig ist, das der estre und der leztte Bstabchue
an der ritihcegn Pstoiin snid. Der Rset knan
ein ttoaelr Bsinöldn sein, tedztorm knan man ihn
onhe Pemoblre lseen. Das ist so, weil wir nicht
jeedn Bstachuebn enzelin leesn, snderon das Wort
als gzeans enkreenn. Ehct ksras! Das ghet wicklirh!
Und dfüar ghneen wir jrhlaeng in die Slhcue!
Hierfür habe ich einen VBA-Code, der in einer Word
Datei den markierten Text entsprechend "umwandelt"
(gemäß der Regel - erster und letzter Buchst
bleibt gleich - der Rest wird "gewirbelt")
Seit 2003 habe ich dafür einen Code:
Sub Schuettelwoerter()
Dim s As String, s1 As String, s2 As String, i As Long, w As Range, n As Boolean
On Error Resume Next
'# If VBA6 Then ' # nutzen, wenn vba6 bzw. winword 2000
'# Selection.Range.NoProofing = True
'# Else
Selection.Range.LanguageID = wdNoProofing
'# End If
Application.ScreenUpdating = False
For Each w In Selection.Range.Words
If Not n Then
i = i + 1: If (i Mod 10) = 0 Then Application.StatusBar = i
s = w.Text: s1 = Trim(s)
If Len(s1) > 3 Then
' zweiter Parameter von PermS: True = Identität verbieten
s2 = PermS(Mid$(s1, 2, Len(s1) - 2), True)
Mid$(s, 2, Len(s1) - 2) = s2
Err.Clear: w.Text = s
If Err Then
s = s1: Mid$(s, 2, Len(s1) - 2) = s2
w.Find.Execute s1, , , , , , , , , s, wdReplaceAll
Else
n = True
End If
End If
Else
n = False
End If
Next w
Application.ScreenUpdating = True
End Sub
Private Function PermS(sIn As String, Optional ByVal noIdent = False) As String
Dim sOut As String, i As Long, j As Long, tmp As String, b As Boolean
sOut = Left$(sIn, 1): b = False
For i = 2 To Len(sIn)
b = sOut Mid$(sIn, i, 1): If b Then Exit For
Next i
If Not b Then PermS = sIn: Exit Function
Randomize: sOut = sIn
Do
For i = Len(sIn) To 1 Step -1
j = Int(i * Rnd) + 1
tmp = Mid$(sOut, j, 1)
Mid$(sOut, j, 1) = Mid$(sOut, i, 1)
Mid$(sOut, i, 1) = tmp
Next
Loop Until Not (noIdent And (sIn = sOut))
PermS = sOut
End Function
das funzt "perfekt" ;)))--------------------
Na, dass ist jetzt auf OFFTOPIC ;)
...
meine Frage geht jedoch auf meine Ursprungsfrage:
Wie kann ich einen markierten Text in XLS (doc ?)
gemäß der "Übersetzungs-Tabelle"
- klein in GROSS
- und dann bestimmte GROSS
- in bestimmte Zahlen
umwandeln ?
Ich freu mich seehr auf einen Tipp :)
Besten Gruss zum sonnigen WE
Stef@n