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

Initialen bei Doppelnamen

Initialen bei Doppelnamen
13.01.2014 10:06:39
Peter
Hallo,
ich würde in einer Tabelle gerne die Initialen meiner Kollegen einfügen.
Ich habe eine Spalte Vornamen und eine mit den Namen.
Mit der Funktion
=Links(a3)&Links(b3)
erhalte ich die Initialen von Vor und Nachname.
Was mache ich aber u.a. bei Klaus-Peter Müller, der die Initialen KPM haben soll?
Mfg
Peter

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Initialen bei Doppelnamen
13.01.2014 10:15:02
Luschi
Hallo Peter,
versuch es mal so:
=LINKS(A3;1) & WENNFEHLER(TEIL(A3;FINDEN("-";A3;1)+1;1);"")& LINKS(B3;1)
Gruß von Luschi
aus klein-Paris

AW: Initialen bei Doppelnamen
13.01.2014 10:17:36
Peter
Besten Dank, klappt hervorragend!

AW: Initialen bei Doppelnamen
13.01.2014 10:32:11
UweD
Hallo
Wenn immer ein Bindestrich zur Trennung verwendet wird, dann so.
=LINKS(A3)&WENNFEHLER(TEIL(A3; FINDEN("-";A3)+1;1);"")&LINKS(B3;1)
Gruß UweD

Eine Aufgabe zum Ausspinnen! ;-)
13.01.2014 19:00:20
Luc:-?
Außer Konkurrenz mal ein Bsp, Folks:
 ABCDEFG
1Klaus-PeterMüller  KPMKPMKPM
2HeinzMüller-LüdenscheidtHMLHMLHML
3Hans-WernerProkop-Olm  HWPOHPOHPO
4AnjaPuschel-Meyer-QuasAPMQPMQPMQ
5GustavGans Edler Herr zu PutlitzGGEHPGEHGEH
6InaMüller  IMIMIMr
7FerdinandHohenzollern Prinz von PreußenFHPPHPPHPP
8ZFml in E1[:E7]:=MaskOn(A1&B1;"gb";;"")
9ZFml in F1[:F7]:=LINKS(MaskOn(A1;"gb";;"");MAX(0;3-LÄNGE(MaskOn(B1;"gb";;""))))&LINKS(MaskOn(B1;"gb";;"");3)
10ZFml in G1[:G7]:=LINKS(MaskOn(A1;"gb";;"");MAX(0;3-LÄNGE(MaskOn(B1;"gb";;""))))&LINKS(MaskOn(B1;"gb";;"");3)&WENNFEHLER
11          (RECHTS(B1;3-LÄNGE(LINKS(MaskOn(A1;"gb";;"");MAX(0;3-LÄNGE(MaskOn(B1;"gb";;""))))&LINKS(MaskOn(B1;"gb";;"");3)));"")

Gruß Luc :-?

Anzeige
@Luc, Ergebnis bei mir #WERT Gruß
14.01.2014 08:18:58
robert
owT

AW: Eine Aufgabe zum Ausspinnen! ;-)
14.01.2014 14:56:56
Klaus
Hallo Robert,
MaskOn ist eine UDF, die Luc mal geschrieben hat. Wenn du die nicht lädst, gibt's natürlich #WERT !
Eine Recherche nach "MaskOn Luc" bringt ziemlich fix diesen Beitrag:
https://www.herber.de/forum/archiv/568to572/t570874.htm#570956
Grüße,
Klaus M.vdT.

Na gut, nur leider ist die Darstellung der ...
14.01.2014 15:41:38
Luc:-?
…UDF in dieser nahezu 9 Jahre alten Darstellung durch spätere Forumssoftware-Updates gestört, Klaus;
ich hatte damals wohl die in HTML dafür vorgesehenen Code-Tags benutzt, was einst auch hier fktionierte. Später hat sich HWH aber auf Pre-Tags beschränkt, so dass die alten Tags unwirksam wdn und die Forumsautomatik sonstwas draus macht.
Ein Anlass für mich, das nun endlich demnächst, wohl noch in diesem Thread, zu korrigieren.
Allerdings hätte ich vermutet, Robert,
dass du die UDF schon hast – das Gezeigte fktioniert in jeder ihrer (abgespeckten) Versionen.
Hätte dann allerdings eher #NAME? vermutet…
Gruß Luc :-?

Anzeige
Enstellt wurden diese beiden Zeilen, ...
14.01.2014 16:32:01
Luc:-?
…die eigentlich nur eine sind, …
On Abs(CInt(InStr(a, z) > 0)) + ZTmask Go
Sub lm, zm, lm

…nämlich On Abs(CInt(InStr(a, z) > 0)) + ZTmask GoSub lm, zm, lm
…also dann insgesamt so:
Function MaskOn(ByVal Text As String, ByVal ZTyp As String, Optional ByVal ZTmask) As String
Dim i As Integer, a As String, d As String, z As String, ZusZ As String
Const b = "abcdefghijklmnopqrstuvwxyzäöü", c = "0123456789", e = " +-,.E " 'letztZ=Chr(160)
If IsMissing(ZTmask) Then
ZTmask = 1
ElseIf IsNumeric(ZTmask) Then
ZTmask = ZTmask Mod 2 + 1
Else
ZusZ = ZTmask: ZTmask = 1
End If
For i = 1 To Len(Text)
Select Case lcase(Left(ZTyp, 3))                            'feste ZKomb in ZTyp
Case "gkz", "buz", "bz", "bzi", "len", "lin", "a0", "an", "anu"
a = c & b & "ß": z = lcase(Mid(Text, i, 1))
Case "gk", "gkb", "bst", "buc", "let", "lit"
a = b & "ß": z = lcase(Mid(Text, i, 1))
Case "kb", "mil", "min"
a = b & "ß": z = Mid(Text, i, 1)
Case "gb", "cal", "cap"
a = UCase(b): z = Mid(Text, i, 1)
Case "zf", "dg", "zif", "dig", "num", "00", "000"
a = c: z = Mid(Text, i, 1)
Case "zw", "nv", "zah", "zwt", "nvl", "+0", "0.-"
a = c & e: z = Mid(Text, i, 1)
Case "mar", "mrk", "mkt", "mtx"
z = Mid(Text, i, 1)
If z = Left(Right(ZTyp, 2), 1) Then
a = z: d = z
ElseIf z = Right(ZTyp, 1) Then
a = z: d = z
ElseIf d = Left(Right(ZTyp, 2), 1) Then
a = z
Else: a = ""
End If
Case Else                                                   'freie ZKomb in ZTyp
a = ZTyp: z = Mid(Text, i, 1)
End Select
a = a & ZusZ
On Abs(CInt(InStr(a, z) > 0)) + ZTmask GoSub lm, zm, lm
Next i
MaskOn = WorksheetFunction.Substitute(Trim(MaskOn), "  ", " ")
Exit Function
lm: Rem reduziert maskierte Zeichen (mehrere hintereinander als 1 blank)
MaskOn = MaskOn & IIf(Right(MaskOn, 1) = " ", "", " ")
Return
zm: Rem übernommene Zeichen
MaskOn = MaskOn & Mid(Text, i, 1)
Return
End Function
Das ist aber eben eine sehr alte Version, bei der grundsätzlich Blank (" ") als Ersatzzeichen verwendet wird. In der von mir verwendeten Version ist ein zusätzliches Argument als Letztes enthalten, mit dem das Ersatzzeichen variabel festgelegt wdn kann. Irgendwo ist da zwar noch der Wurm drin, aber mit Leerstring ("") fktioniert's! In allen anderen Versionen muss leider noch zusätzlich WECHSELN eingesetzt wdn, um die Standard-Ersatz-Blanks zu eliminieren.
Gruß Luc :-?

Anzeige
Verd... Tastatur! Entstellt! owT
14.01.2014 16:33:29
Luc:-?
:-?

..ich hab sie....
14.01.2014 16:06:10
robert
Hi,
ich hab die Function, aber mit 2 ;;(Semikolon) in den Formeln
kommt #WERT, mit einem ; kommt zB. K P M
Bei Bild von Luc kommt KPM
Woran kann es also liegen ?
Gruß
robert

Ja, deshalb kommt #WERT! und nicht #NAME?, ...
14.01.2014 16:38:24
Luc:-?
…Robert!
Hast du nicht viell auch die abgespeckte neuere Variante MaskOnX? Mir ist so, als ob die so heißen könnte (wg Abspeckung). Da könnte das zusätzliche Argument schon enthalten sein. Ansonsten s.oben, WECHSELN!
Gruß Luc :-?

AW: Ja, deshalb kommt #WERT! und nicht #NAME?, ...
14.01.2014 16:51:57
robert
Hi Luc,
ich werde maskonx suchen...
Aber-Du stellst ein Beispiel hier ein, zeigst die Formeln und das Eregebnis-OK.
Mit welcher Version maskon funktioniert es denn bei dir? ;-)
Du hast es doch sicher getestet !
Gruß
robert

Anzeige
Das war doch absichtlich außer Konkurrenz ...
14.01.2014 19:01:23
Luc:-?
…und nur auf die Ergebnisvariationen orientiert, Robert:
1. alle GBuchstaben, 2. maximal 3 GB'n, 3. stets 3 Buchstaben (ggf um letzten B'st des Nachnamens ergänzt)
Nebenbei, da irrelevant, ist die hier benutzte Version (2.9) ist die hier (Hilfe zu AddIn FXss) beschriebene:
MaskOn ( Text; ZTyp; ZTmask=0; ErsZ=blank )
Ergebnis: Listentext, Zeichenfolge oder Zahl
Erzeugt redu­zierte Zeichenfolge als Listen­text über Maske laut Arg2 mit Einzel­blanks als Ersatz-/Trennzeichen
Arg2.1: anu=alf+nume­risch alf=Buch­stabe kb=Klein­buch­stabe gb=Groß­buch­stabe num=Ziffer zw=Zahlen­werte
Arg2.2: hex=Hexadezimal­zahlen ad=Zell­adresse mar‘’=Markie­rung ‘…’ [‘’=belie­bige diffe­rente Zei­chen ]
Arg2.3: belie­bige direkt einge­tragene Zeichen/kombi­nation (freie Zeichen­kombi­nation hier ggw nicht möglich)
Arg3: 0 [1 ] *nur [ohne ] Zeichen laut Arg2 oder zusätz­lich zu belas­sende Zeichen (implizit 0)
Arg4: fehlt/leer/beliebiges nicht in Arg1 enthaltenes Zeichen
 Bsp1: a) M =MaskOn("5 Mann";"gb"), b) , % =MaskOn("1,6%";"num";1), c) 2,52 =MaskOn("zu 2,52 Euro";"zw")
 Bsp2: a) F0 =MaskOn("F0 byte";"hex"), b) A$1:IV1 =MaskOn("Sum(A$1:IV1)";"ad"), c) Sum =MaskOn("Sum(A:A)";"mar()";1)
 Bsp3: a) a b c =MaskOn("(a+b)*c";"( + * )";1), b) a W n =MaskOn("alle Wellen";"el";1), c) lle el =MaskOn("alle Welt";"el")
Hinweis: Im Falle von Arg2="ad" ist in Arg3 nur ein Ein­zel­zei­chen, keine Folge ein­zel­ner zusätz­lich zu bewah­ren­der Zei­chen wie in allen ande­ren Fäl­len zuläs­sig. Außer­dem muss es unmit­tel­bar vor einer erkenn­baren Zell­adresse in Arg1 auf­treten. Falls hier der soge­nannte Schnitt­men­gen­ope­ra­tor (Leer­zei­chen) auf­tre­ten kann, sollte(n) ggf (ein) ande­re(s) Zei­chen für Arg4 gewählt werden.
Achtung!
Von die­ser Ver­sion wer­den keine Z1S1- und Adres­sen ober­halb von IV65536 (xlVer­sio­nen ab 12) erkannt!

Vs 2.9b -Autor: LSr -1Pub:(2.1) 20050217 herber.de -CDate: 2004/5 -LUpd: 20100206n
Gruß Luc :-?

Anzeige
OK, werde mich damit befassen :-) owT
14.01.2014 19:40:03
robert

@Klaus M.vdT. , hast Du es probie? t-Gruß
14.01.2014 17:18:22
robert

20 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige