Hallo liebe experten,
ich habe eine Liste mit Namen.
LUTZ MAIER
THOMAS JÜRGENS
HANS PETER MÜLLER
TANJA SOMMER-WIND
ich will die zum einen orthografisch richtig schreiben ( so mit Groß- und Kleinschreibung) und ich würde gerne das nach Vor und Nachnamen splitten.
Kann mir jemand einen Denkanstoß geben, wie das mit VBA geht.
Ich muss mit einer schleife durch die länge des Strings gehen,
jedes zeichen abcheken ob es ein Buchstabe ist.
und dann mit ced asc funktion ersetzten?
Aber wie ich das mit dem trennen mache, weiß ich nicht.
Liebe Grüße
Winter
Danke für Eure Mühe
LUTZ MAIER
THOMAS JÜRGENS
HANS PETER MÜLLER
TANJA SOMMER-WIND
ich will die zum einen orthografisch richtig schreiben ( so
mit Groß- und Kleinschreibung) und ich würde gerne das nach
Vor und Nachnamen splitten.
Hallo Winter,
Sub tt()
Dim Zei As Long
With Application.WorksheetFunction
For Zei = 1 To Range("A" & Rows.Count).End(xlUp).Row
If InStr(Cells(Zei, 1), " ") \> 0 Then
Cells(Zei, 2) = .Proper(Mid(Cells(Zei, 1), InStrRev(Cells(Zei, 1), " ") + 1))
Cells(Zei, 1) = .Proper(Replace(.Proper(Cells(Zei, 1)), " " & Cells(Zei, 2), ""))
End If
Next Zei
End With
End Sub
Gruß
Reinhard
Hallo Reinhard,
Sub tt()
Dim Zei As Long
With Application.WorksheetFunction
For Zei = 1 To Range(„A“ & Rows.Count).End(xlUp).Row
If InStr(Cells(Zei, 1), " ") > 0 Then
Cells(Zei, 2) = .Proper(Mid(Cells(Zei, 1),
InStrRev(Cells(Zei, 1), " ") + 1))
Cells(Zei, 1) = .Proper(Replace(.Proper(Cells(Zei,
1)), " " & Cells(Zei, 2), „“))
End If
Next Zei
End With
End Sub
Wow
danke
meine version hätte irgendwie ausgeshen wie
for i = 1 to len(strName)
strNewName= strNewName & str(ASC(midStr(strName,i,1) )-25))
...
Next i
Also über die Ascii Tabelle.
und VIIIEEEL komplizierte,
Cool danke
Winter
meine version hätte irgendwie ausgeshen wie
for i = 1 to len(strName)
strNewName= strNewName & str(ASC(midStr(strName,i,1) )-25))
…
Next i
Also über die Ascii Tabelle.
und VIIIEEEL komplizierte,
Hallo Winter,
Proper entspricht Gross2 und ist natürlich eleganter als das selbst zu programmieren.
So etwa, mit Chr und nicht Str, das klappt zwar so, aber man müßte noch „Ä“,„Ö“,"-" usw. abfangen:
Sub hh()
Dim strName, strKurz, N, S
strName = "KLAUS PETER MUELLER"
strKurz = Split(strName, " ")
For S = LBound(strKurz) To UBound(strKurz)
For N = 2 To Len(strKurz(S))
Mid(strKurz(S), N, 1) = Chr(Asc(Mid(strKurz(S), N, 1)) + 32)
Next N
Next S
strName = Join(strKurz, " ")
MsgBox strName
End Sub
So etwa, mit Chr und nicht Str, das klappt zwar so, aber man
müßte noch „Ä“,„Ö“,"-" usw. abfangen:
Danke
Chr klar hätte es erst mit CHR$ probiert und dann die Excel-hilfe
in Ansprich gemonnen. Und irgendwie eine Ascci tabelle organisiert.
a = 65 Wenn mein altes gehirn mich nicht in Stich läßt?
Umöaute wäre hässlich gewoerden brrr
Danke nochmal.
Winter