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
496
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
Suomen kansa haluaa Antti Lindtmanista pääministerin
Lindtman on miltei tuplasti suositumpi kuin etunimikaimansa Kaikkonen. Näin kertoo porvarimedian teettämä kysely. http2394190Vain 21% kannattaa Lindtmania pääministeriksi
se on selvästi vähemmän kuin puolueen kannatus, mites nyt noin?1142649Miten löydän sinut
Ja saan sanottua kaiken mitä haluan sinulle kertoa? Ja kuinka kuuntelisit minua sen hetken? Kuinka voin ilmaista sen mit412402Vaikea tilanne
Hieman kolkuttaa omatuntoa, kun on osoittanut kiinnostusta väärää naista kohtaan. En ymmärrä miten toinen on voinut te1161446Yöllinen autolla kaahari Heinolan seudulla
Asukkaita häiriköivän nuoren herran autokaahaus keskustelu poistettu, onko jokin hyvävelijärjestelmä käytössä ?811446- 481179
- 781097
- 59973
- 45956
Emme koskaan keskustelleet kasvotusten syistä välirikollemme
Enkä voisi kertoa perimmäistä rehellistä syytä. Kerroin sinulle pintapuolisen ”paketin” ja otin tavallaan omalle vastuu58931