Stránka 1 z 1

Excel - rozdělení JmenoPrijmeni podle velkého písmena

Napsal: 02 úno 2018 16:05
od Marietta99
Prosím o radu.

V buňce je:

MarieHoráková

jaký vzorec použít, když chci mít opět v jedné buňce:

Marie Horáková

Nemůžu na to přijít:(

Děkuji moc!M.

Re: Excel - rozdělení JmenoPrijmeni podle velkého písmena

Napsal: 02 úno 2018 16:33
od elninoslov
Pr.

Re: Excel - rozdělení JmenoPrijmeni podle velkého písmena

Napsal: 02 úno 2018 17:20
od atari
Na mapu znaků do čísla 96 bych tedy nespoléhal. Na jména začínající na písmeno s interpunkcí (např. Ženožičková) to nefugnuje. A teké to funguje jen na jedno jméno a jedno příjmení. Znám paní co má prostřední jméno Živa.

Dodatečně přidáno po 2 minutách 20 vteřinách:
Jediné co mě napadlo, je brát písmenko po písmenku a funkcí "VELKÁ" převést písmeno na velké, a porovnat funkcí "STEJNÉ" s původním. Pokud se rovná, tak před něj vložit mezeru.

Re: Excel - rozdělení JmenoPrijmeni podle velkého písmena

Napsal: 02 úno 2018 18:13
od elninoslov
Výborný postreh, ešte na to neskôr tiež pozriem.

EDIT: Na spomenutý námet od atari:

Kód: Vybrat vše

=IFERROR(REPLACE(A1;MATCH(TRUE;EXACT(UPPER(MID(A1;ROW($A$2:INDEX($A:$A;LEN(A1)));1));MID(A1;ROW($A$2:INDEX($A:$A;LEN(A1)));1));0);1;MID(A1;MATCH(TRUE;EXACT(UPPER(MID(A1;ROW($A$2:INDEX($A:$A;LEN(A1)));1));MID(A1;ROW($A$2:INDEX($A:$A;LEN(A1)));1));0);1)&" ");A1)

Ale je to iba na dvojslovné mená.

Re: Excel - rozdělení JmenoPrijmeni podle velkého písmena

Napsal: 03 úno 2018 10:26
od Marietta99
Dekuji moc! Ano, potrebuju dvojslovne jmena...
Prave mi vznikl problem s ceskymi hacky...nekde to bralo, jinde ne.
Diky moc

Re: Excel - rozdělení JmenoPrijmeni podle velkého písmena

Napsal: 03 úno 2018 10:59
od atari
Tak ty Tvoje vzorce jsou mozkový "masakr". Tenhle druhý už neumím dekodovat. A rozkládat to, na to nemám čas. Ale je tam někde chyba. Ty jmnéna to nerozhodí.

Re: Excel - rozdělení JmenoPrijmeni podle velkého písmena

Napsal: 03 úno 2018 11:15
od elninoslov
Pridal som ešte TRIM/PROČISTIT aby sa to vysporiadalo, aj s tým ak je meno korektne zapísané a nepridávalo tam druhú medzeru. Inak dajte príklad mena, ktorý nefunguje, mňa nič nenapadá. A dávate to ako maticový vzorec (Ctrl+Shift+Enter) ?

EDIT:
A ešte príklad UDF, ktorý nemá problém s viac slovami:

Kód: Vybrat vše

Function ROZDEL_MENO(Meno As String) As String
Dim UMeno As String, i As Long, Znak As String * 1, Medzera As String
 
  If Len(Meno) = 0 Then Exit Function
  ROZDEL_MENO = Mid$(Meno, 1, 1)
  UMeno = UCase(Meno)
 
  For i = 2 To Len(Meno)
    Medzera = vbNullString
    Znak = Mid$(Meno, i, 1)
   
    If Znak <> " " Then
      If Znak = Mid$(UMeno, i, 1) Then
        Medzera = IIf(Mid$(Meno, i - 1, 1) <> " ", " ", vbNullString)
      End If
    End If
   
    ROZDEL_MENO = ROZDEL_MENO & Medzera & Znak
  Next i
End Function

Re: Excel - rozdělení JmenoPrijmeni podle velkého písmena

Napsal: 05 úno 2018 09:15
od Marietta99
Děkuji děkuji moc!! Tohle zafungovalo výborně. :thumbup:

Re: Excel - rozdělení JmenoPrijmeni podle velkého písmena

Napsal: 05 úno 2018 10:11
od elninoslov
Ani omylom to nieje dokonalé, lebo mená môžu mať aj komplikované tvary "bez pravidiel":
Rafael van der Vaart
Leonardo DiCaprio
Ángel Di María
John von Neumann
...

Re: Excel - rozdělení JmenoPrijmeni podle velkého písmena

Napsal: 07 úno 2018 01:41
od lubo.
@ elninoslov

Lze to snadno zjednodušit:

Kód: Vybrat vše

=IFERROR(PROČISTIT(NAHRADIT(A1;POZVYHLEDAT(PRAVDA;STEJNÉ(VELKÁ(ČÁST(A1;ŘÁDEK($A$2:INDEX($A:$A;DÉLKA(A1)));1));ČÁST(A1;ŘÁDEK($A$2:INDEX($A:$A;DÉLKA(A1)));1));0)+1;0;" "));A1)


(Funkce REPLACE umí také vkládat.)

Re: Excel - rozdělení JmenoPrijmeni podle velkého písmena

Napsal: 07 úno 2018 08:20
od elninoslov
Použiť dĺžku 0 je vynikajúci nápad! Ušetrí to celý jeden výpočet. Paráda, to by ma nenapadlo...