Minulla on osoitteita yhdellä sarakkeella (katuosoite postitoimipaikka). Ne pitäisi saada eroteltua niin, että yhdellä sarakkeella olisi katuosoite ja postitoimipaikka toisella.
Ongelmana on, että katuosoitteet ja ostitoimipaikat ovat eri pituisia joten niiden käsittely pituuden mukaan ei onnistu. Tai ainakaan minä en osaa.
Osaisiko joku neuvoa noviisia?
Osoite kahdelle sarakkeelle
6
484
Vastaukset
- MS
Klikkaa koko katuosoite postitoimipaikka pystysarake aktiiviseksi
Klikkaa teksti sarakkeisiin
Kiinteä leveys ( postinumerot samanpituisia suomessa )
Voit pystyssäolevan nuuolen avulla päättää mistä kohdasta solu jaetaan
Muista valita kaikki solut tekstiksi ettei postinumeroista katoa etunollat- muuan mies
Voipi olla tekemätön paikka, jos osoite on esim:
"Urho Kekkosenkatu 155 A 42 65380 Vanha Vaasa" ilman pilkkuja tai muita erottimia. Välilyöntejä on liikaa, jotta teksti sarakkeisiin pystyisi löytämään postinumeron, mistä taas pääsisi palastelemaan osoiterimpsun kolmeen sarakeeseen.
Ihminen näkee katkaisukohdat, mutta excel ei ilman Kunden koodia...
"Ihminen näkee katkaisukohdat, mutta excel ei ilman Kunden koodia..."
;-)
osoitteet nyt C1:Cxx ja purkaa katuosoitteen D- sarakkeeseen ja postitoimipaikan numeroineen E -sarakkeeseen
moduuliin...
Sub PuraOsoitteet()
Dim i As Long
Dim Postinumero As Integer
Dim solu As Range
Dim vika As Long
vika = Range("C65536").End(xlUp).Row
For Each solu In Range("C1:C" & vika)
For i = Len(solu) To 1 Step -1
If IsNumeric(Mid(solu, i, 1)) Then
Postinumero = Postinumero 1
End If
If Postinumero = 5 Then
solu.Offset(0, 1) = Left(solu, i - 1)
solu.Offset(0, 2) = Mid(solu, i)
Exit For
End If
Next
Postinumero = 0
Next
End Sub
Keep EXCELing
@Kunde- Sebas
Miten tuota koodia pitää muuttaa, että se erottaa postinumero ja postitoimipaikan yhdestä solusta 2 kahteen soluun? Arvojen välillä on välilyönti (00100 Helsinki).
Kiitos! Sebas kirjoitti:
Miten tuota koodia pitää muuttaa, että se erottaa postinumero ja postitoimipaikan yhdestä solusta 2 kahteen soluun? Arvojen välillä on välilyönti (00100 Helsinki).
Kiitos!Sub PuraOsoitteet()
Dim i As Long
Dim Postinumero As Integer
Dim solu As Range
Dim vika As Long
vika = Range("C65536").End(xlUp).Row
For Each solu In Range("C1:C" & vika)
For i = Len(solu) To 1 Step -1
If IsNumeric(Mid(solu, i, 1)) Then
Postinumero = Postinumero 1
End If
If Postinumero = 5 Then
solu.Offset(0, 1) = Left(solu, i - 1)
solu.Offset(0, 2).NumberFormat = "@"
solu.Offset(0, 2) = Mid(solu, i, 5)
solu.Offset(0, 3) = Mid(solu, i 6)
Exit For
End If
Next
Postinumero = 0
Next
End Sub
- Sebas
Kiitos vastauksesta!
Sain toimimaan myös Split() -funktiolla:
Sub PuraOsoitteet()
erotus= Split(Range("C1").Value, " ")
postinumero= erotus(0)
postitoimipaikka = erotus(1)
Cells(1, 4) = postinumero
Cells(1, 5) = postitoimipaikka
End Sub
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Heh, Riikka runnoi Suomen BKT:n miinukselle
Suomi on Riikan irvistysten ansiosta ainoa negatiivisen talouskasvun maa EU:ssa. Ei tästä ainakaan EU:ta voi syyttää, ku305053Sanna vaihteeksi Australian "60 minuuttia" ohjelmassa
Kansanvälinen superstaramme esiintyi tällä kertaa toisella puolen maapalloa esitettävässä ohjelmassa. Kiinnostus on kova671940HihhuIi-Päivi täpinöissään Viktorin tapaamisesta
Eiköhän nyt kaikille ole vihdoin selvää kenen joukoissa tämäkin putinisti seisoo. https://www.iltalehti.fi/politiikka/a1131827Erään T miehen viimeinen aloitus tänne
Moi Olen kirjoittanut täällä säännöllisesti yli 5 vuotta. Kaivannut kuten kuuluukiin, mutta myös unohdellut ja selvitel291724- 1111690
Björn Wahlroos ykkösaamussa nautittavaa kuunneltavaa
Ehdottomasti viisaimpia ja tietävämpiä ihmisiä mitä Suomesta koskaan tullut. Naureskeli viherpiipertäjille jotka ihan p235974- 71911
Yritän saada sinut pois mielestäni ja ajatuksistani nainen
Turhaan. Mitä enemmän yritän, sitä enemmän haluan sinut ja sinua. Miten voitkaan olla niin ihana ja tuntua niin hyvältä.44887Leikitään tavuleikkiä
Millaiset nimitavut muodostuvat jos yhdistät oman etunimesi ensimmäisen tavun ja kaipaamasi ihmisen etunimen ensimmäisen54833- 53792