Onko mahdollista saada seuraavanlaista toimintoa:
A-sarake B-sarake
Virtanen Heikki Virtanen
Virtanen Asko Virtanen
Korhonen Ville Korhonen
Tuominen Eetu Tuominen
Korhonen Reino Korhonen
Eli minulla olisi A sarkeessa ihmisten nimiä ja pitäisi saada B-sarkkeeseen kopioitua A-sarkkeen ihmisten sukunimet. Eri sukunimiä on noin 20kpl ja A-sarakkeessa nimiä noin 500kpl. Miten teen?
Tekstin poimiminen
15
4857
Vastaukset
- paavali
Tee soluun B1 kaava
=POIMI.TEKSTI(A1;1;KÄY.LÄPI(" ";A1))
ja vedät täyttökahvalla niin pitkälle kun nimiä riittää. Poimii tekstin välilyöntiin asti, jos sukunimi on kaksiosainen poimii vain ensimmäisen osan.- Jakke
Nimet ovat tosiaan kaksi osaisia joten toinen osa jää pois. Olisiko mahdollista että se tutkisi listan jossa se kävisi läpi sukunimet, kun niitähän ei ole kuin se 20kpl.
- Mika
Jakke kirjoitti:
Nimet ovat tosiaan kaksi osaisia joten toinen osa jää pois. Olisiko mahdollista että se tutkisi listan jossa se kävisi läpi sukunimet, kun niitähän ei ole kuin se 20kpl.
Eikös kaksiosaiset sukunimet kirjoiteta väliviivalla. Silloinhan tuon pitäisi toimia. (Poikkeuksena tosin jotkut "von Hertzen"-tyyppiset nimet)
Lisäisin tuon funktion loppupuolelle vielä "-1", niin se välilyönti ei tule mukaan:
=POIMI.TEKSTI(A1;1;KÄY.LÄPI(" ";A1)-1)
- Mika - paavali
Jakke kirjoitti:
Nimet ovat tosiaan kaksi osaisia joten toinen osa jää pois. Olisiko mahdollista että se tutkisi listan jossa se kävisi läpi sukunimet, kun niitähän ei ole kuin se 20kpl.
Jos nimi on muodossa
Koski-Vähälä Reino
tuo kaava toimii, Mutta jos nimi on muodossa
Rantala Kamunen Tuula
poimii vain Rantala.
Millaisessa muodossa niitä on. - Jakke
Mika kirjoitti:
Eikös kaksiosaiset sukunimet kirjoiteta väliviivalla. Silloinhan tuon pitäisi toimia. (Poikkeuksena tosin jotkut "von Hertzen"-tyyppiset nimet)
Lisäisin tuon funktion loppupuolelle vielä "-1", niin se välilyönti ei tule mukaan:
=POIMI.TEKSTI(A1;1;KÄY.LÄPI(" ";A1)-1)
- MikaSuurin osa on kyllä normaaleja sukunimiä, mutta löytyy myös noita saksalaisia nimiä Von, Dam, yms.
- Jakke
paavali kirjoitti:
Jos nimi on muodossa
Koski-Vähälä Reino
tuo kaava toimii, Mutta jos nimi on muodossa
Rantala Kamunen Tuula
poimii vain Rantala.
Millaisessa muodossa niitä on.Ilman väliviivaa. Nyt toteutin sen niin että C-sarakkeessa on seuraava kaava:
=JOS(B1="Herzen";KETJUTA(B1;" Von");JOS(B1="Dam";KETJUTA(B1;" Van");B1))
En nyt ihan tarkaan muista montako ikävää sukunimi muunnosta löytyy mutta ei niitä montaa ollut. - paavali
Jakke kirjoitti:
Ilman väliviivaa. Nyt toteutin sen niin että C-sarakkeessa on seuraava kaava:
=JOS(B1="Herzen";KETJUTA(B1;" Von");JOS(B1="Dam";KETJUTA(B1;" Van");B1))
En nyt ihan tarkaan muista montako ikävää sukunimi muunnosta löytyy mutta ei niitä montaa ollut.se onnistuu, Mutta ei onnistu ilman -1, josta Mika jo mainitsi.
- Kunde
paavali kirjoitti:
se onnistuu, Mutta ei onnistu ilman -1, josta Mika jo mainitsi.
Lisää moduuli ja sinne funktio
Function Sukunimi(Teksti As String)
Dim i As Integer
Dim sana As String
i = 1
Do Until sana Like (" *")
sana = Right(Teksti, i)
i = i 1
Loop
Sukunimi = Left(Teksti, Len(Teksti) - Len(sana))
End Function
sitten liitä funktio nappulalla haet sukunimi funktion tai kirjoitat suoraan soluun
=Sukunimi(A1) ja kopioit alas
:)Kunde - Jakke
Kunde kirjoitti:
Lisää moduuli ja sinne funktio
Function Sukunimi(Teksti As String)
Dim i As Integer
Dim sana As String
i = 1
Do Until sana Like (" *")
sana = Right(Teksti, i)
i = i 1
Loop
Sukunimi = Left(Teksti, Len(Teksti) - Len(sana))
End Function
sitten liitä funktio nappulalla haet sukunimi funktion tai kirjoitat suoraan soluun
=Sukunimi(A1) ja kopioit alas
:)KundeTäytyy kokeilla kaikki mahdolliset ja mahdottomat tapaukset. Niin huomasin ettei toimi kunnolla.
Jos on nimi Virtanen Maija Liisa ilman väliviivaa niin tulos on Virtanen Maija. - Mika
Jakke kirjoitti:
Täytyy kokeilla kaikki mahdolliset ja mahdottomat tapaukset. Niin huomasin ettei toimi kunnolla.
Jos on nimi Virtanen Maija Liisa ilman väliviivaa niin tulos on Virtanen Maija.Tämä nyt tässä vaihessa enää paljon auta, mutta kuitenkin...
Taitaa olla varmin kosnti se, että tietojen tallennus vaiheessa käyttää noissa sukunimissä vaikka alaviivaa tyyliin von_Hertzen, ja poistaa "ala-apuviivat" sitten kun tietoja esitetään.
- Mika - edwf
Mika kirjoitti:
Eikös kaksiosaiset sukunimet kirjoiteta väliviivalla. Silloinhan tuon pitäisi toimia. (Poikkeuksena tosin jotkut "von Hertzen"-tyyppiset nimet)
Lisäisin tuon funktion loppupuolelle vielä "-1", niin se välilyönti ei tule mukaan:
=POIMI.TEKSTI(A1;1;KÄY.LÄPI(" ";A1)-1)
- MikaEntäpä jos haluan sen loppu osan välilyönnin jälkeen C soluun?
- MSK
Tämä hirviö B2 soluun tutkittava nimi A2 solussa.
=POIMI.TEKSTI(A2;1;JOS(ONVIRH(KÄY.LÄPI(" ";A2;KÄY.LÄPI(" ";A2;1) 1));KÄY.LÄPI(" ";A2;1);KÄY.LÄPI(" ";A2;KÄY.LÄPI(" ";A2;1) 1)))
Tämä tutkii mahdollisen toisen välilyönnin, joten poimii kaksiosaisen sukunimen, mutta ei toimi tälläisenään, jos etunimistäkin löytyy välilyöntejä eli on kaksiosaisia etunimiä (siinä tapauksessa poimii myös ensimmäisen etunimen, jos sukunimessä ei välilyöntiä). pienellä jatkojalostuksella saisi tuonkin tutkittua.- Kunde
MSK kirjoittaa
"Tämä tutkii mahdollisen toisen välilyönnin, joten poimii kaksiosaisen sukunimen, mutta ei toimi tälläisenään, jos etunimistäkin löytyy välilyöntejä eli on kaksiosaisia etunimiä (siinä tapauksessa poimii myös ensimmäisen etunimen, jos sukunimessä ei välilyöntiä). pienellä jatkojalostuksella saisi tuonkin tutkittua."
Tuon pienen jatkojalostuksen haluan minäkin nähdä...
tehtävässähän ei ole mitään muuta vaikeutta kuin kaksi välilyöntiä, eli tapaukset
1. kaksiosainen sukunimi ja välilyönnillä erotettu nimi ja
2. välilyönillä erotettu sukunimi ja kaksiosainen etunimi
Miten ihmeessä MSK aiot selvittää kumpiko tapaus on kyseessä?
:)Kunde - MSK
Kunde kirjoitti:
MSK kirjoittaa
"Tämä tutkii mahdollisen toisen välilyönnin, joten poimii kaksiosaisen sukunimen, mutta ei toimi tälläisenään, jos etunimistäkin löytyy välilyöntejä eli on kaksiosaisia etunimiä (siinä tapauksessa poimii myös ensimmäisen etunimen, jos sukunimessä ei välilyöntiä). pienellä jatkojalostuksella saisi tuonkin tutkittua."
Tuon pienen jatkojalostuksen haluan minäkin nähdä...
tehtävässähän ei ole mitään muuta vaikeutta kuin kaksi välilyöntiä, eli tapaukset
1. kaksiosainen sukunimi ja välilyönnillä erotettu nimi ja
2. välilyönillä erotettu sukunimi ja kaksiosainen etunimi
Miten ihmeessä MSK aiot selvittää kumpiko tapaus on kyseessä?
:)KundeJoo... tajusin tuon välittömästi kirjoitettuani edellisen viestini. Kai toivoin, että kukaan ei tuota mokaa huomaisi... Aika mahdotonta on ilman sanakirjalla varustettua massiivista ohjelmaa selvittää kolmesta peräkkäisestä sanasta, mikä on sukunimeä ja mikä etunimeä.
Ajattelin tuossa kai sitä, että mahdollisen kolmannenkin välilyönnin voisi ottaa kaavassa huomioon...
- sdcvsdc
Asia selvisikin...Eli tein tällaisella kaavalla sen loppuosan haun. Löysin vastauksen toisaalta ja nättäisi toimivan
=POIMI.TEKSTI(A5;(ETSI(" ";A5)) 1;50)
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 938078
- 403862
Lähetä terveisesi kaipaamallesi henkilölle
Vauva-palstalta tuttua kaipaamista uudessa ympäristössä. Kaipuu jatkukoon 💘1021906- 241340
Taas ryssittiin oikein kunnolla
r….ä hyökkäsi Viroon sikaili taas ajattelematta yhtään mitään https://www.is.fi/ulkomaat/art-2000011347289.html321163Valtimon Haapajärvellä paatti mäni nurin
Ikävä onnettomuus Haapajärvellä. Vene hörpppi vettä matkalla saaren. Veneessä ol 5 henkilöä, kolme uiskenteli rantaan,311089Vanha Suola janottaa Iivarilla
Vanha suola janottaa Siikalatvan kunnanjohtaja Pekka Iivaria. Mies kiertää Kemijärven kyläjuhlia ja kulttuuritapahtumia11885Rakastuminenhan on psykoosi
Ei ihme että olen täysin vailla järkeä sen asian suhteen. Eipä olis aikoinaan arvannut, että tossa se tyyppi menee, jonk53847Olisinko mä voinut käsittää sut väärin
Nyt mä kelaan päässäni kaikkea meidän välillä tapahtunutta. Jos mä sit kuitenkin tulkitsin sut väärin? Se, miten sä käyt31822Känniläiset veneessä?
Siinä taas päästiin näyttämään miten tyhmiä känniläiset on. Heh heh "Kaikki osalliset ovat täysi-ikäisiä ja alkoholin v27772