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
550
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
- 1261760
- 1071241
Postimerkki kirjeeseen ja kortiin maksaa jo 3 euroa!
https://yle.fi/a/74-20229241 Kyllä tämä on järjetön hinta, Posti tuhoaa itsensä tällä hinnalla, täytyyhän Postin "Herro1381101- 491009
Keitä oli kunnanjohtajan erottajat?
Kouluja ei ole varaa ylläpitää mutta johtajasopimukseen palaa 100000 euroa ja uuden johtajan hakuprosessi maksaa kymmeni54920- 130910
Atte Harjanne usuttaa eläkeläisvihaan
Karmeeta kuultavaa aamun uutislähetyksessä, kun Atte Harjanne, tunnettu eläkeläisvihaaja, suitsii sukupolvien välistä v240878Helsingin Mäntymäki muuttui Kultajuhlan jälkeen kaatopaikaksi.
Mitä se kertoo jääkiokosta ja lätkäfaneista? Saikkua huomenna huusi fani yöllä?73767Pridekulkue kiellettävä?
Näin täällä suoraan vaaditaan. Perusteina mitä mielikuvituksellisimmat tarinat. No, miksi ihmeessä kukaan ei ole samalla178749Mä oon tyytyväinen, että ei ole enää tunteita.
Samalla tajusin, että sun kohdalla tykkäsin enemmän niistä tunteista kuin sinusta persoonana. Halusin väkisin nähdä sinu55739