Solujen lajittelu

Anonyymi

Yritän lajitella taulukon soluja numerojärjestykseen. Soluissa olevat tiedot ovat pääasiassa lukuja, mutta joissakin on myös kirjaimia lopussa. Esim. 1000, 2045, 2346, 1548aa, 1862 bbb jne. Ongelmana on, että Excel aakkostaa ensin pelkkiä numeroita sisältävät ja sitten ne joissa on tekstiä perässä (suoraan numerossa kiinni tai välilyönnillä erotettuna). Minulla oli solujen tyyppinä "Yleinen", muutin sen muotoon "Teksti", mutta se ei auttanut. Miten saisin solut järjestykseen. Käytössä on Excel 2013.

2

1652

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      En keksinyt yhtäkkiä muuta kuin käyttää apusaraketta. Lajittelu menee oikein, jos lisäät kaikkien perään vaikka merkin "-". Välilyönti, numero tai desimaalierotin ei auta.

    • moduuliin...
      Sub Sorttaa()
      Dim Rng As Range
      Dim Vika As Integer
      Dim Solu As Range
      Dim Numero As String
      Dim Teksti As String
      Dim a As Variant
      Application.DisplayAlerts = False
      On Error Resume Next
      'Type:=8 sallii vain solualueen
      Set Rng = Application.InputBox( _
      Title:="Lajittelu", _
      Prompt:="Valitse lajiteltava alue sarakkeesta", _
      Type:=8)
      On Error GoTo 0
      If Rng Is Nothing Then Exit Sub
      Rng.NumberFormat = "@"
      Sheets.Add.Name = "Huuhaa"
      Rng.Copy Worksheets("Huuhaa").Range("A1")
      'pilkotaan solu numero ja tekstiosaan
      For Each Solu In Worksheets("Huuhaa").Range("A1").Resize(Rng.Count)
      ' numero-osa(toimii vain, jos numero-osa on alussa
      Numero = Val(Solu)
      Solu.Offset(0, 1) = Numero
      ' tekstiosa
      Teksti = Application.WorksheetFunction.Replace(Solu, 1, Len(Numero), "@")
      a = Split(Teksti, "@")
      ' lisätään esim. a-kirjain, jotta saadaan lajiteltua pelkän luvun sisältävät solut oikein
      Solu.Offset(0, 2) = "a" & a(1)
      Next
      ' lajitellaan numero-osan ja sitten kirjainten mukaan
      Worksheets("Huuhaa").Columns("A:C").Select
      ActiveWorkbook.Worksheets("Huuhaa").Sort.SortFields.Clear
      ActiveWorkbook.Worksheets("Huuhaa").Sort.SortFields.Add2 Key:=Range("B1:B8") _
      , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
      ActiveWorkbook.Worksheets("Huuhaa").Sort.SortFields.Add2 Key:=Range("C1:C8") _
      , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
      With ActiveWorkbook.Worksheets("Huuhaa").Sort
      .SetRange Range("A1:C8")
      .Header = xlGuess
      .MatchCase = False
      .Orientation = xlTopToBottom
      .SortMethod = xlPinYin
      .Apply
      End With
      'muuta taulukon nimi sopivaksi
      Worksheets("Huuhaa").Range("A1:A" & Rng.Count).Copy Worksheets("Taul1").Range(Rng.Address)
      Worksheets("Huuhaa").Delete
      Application.DisplayAlerts = True
      End Sub

      Keep EXCELing
      @Kunde

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Anteeksi mies

      En vaan osaa kohdata sinua ja olla normaali. En tiedä mikä vaivaa. Samaan aikaan tekee mieli tulla lähelle ja kuitenkin
      Ikävä
      58
      10367
    2. Mietin aina vain

      Minä niin haluaisin nähdä sinut. Ei tuo yhden ainoan kuvan katsominen paljon helpota... Miksi sinä et voisi olla se roh
      Tunteet
      17
      4331
    3. Hetken jo luulin, että en ikävöi sinua koko aikaa

      Mutta nyt on sitten taas ihan hirveä ikävä jotenkin. Tiedätköhän sinä edes, kuinka peruuttamattomasti minä olen sinuun r
      Ikävä
      32
      3616
    4. Kysely lieksan miehille

      Olemme tässä pohtineet tällaista asiaa, että miten on. Tästä nyt on paljon ollut juttua julkisuudessakin aina sanomaleht
      Lieksa
      106
      2996
    5. Outoa että Trump ekana sanoutui irti ilmastosopimuksesta

      kun Kaliforniaa riepottelee siitä johtuvat tuhoisat maastopalot. Hirmumyrskytkin ovat USA:ssa olleet tuhoisia.
      Maailman menoa
      435
      2162
    6. Palstan henkisesti sairaat ja lihavat

      Täällä on sairaita, työttömiä ihmisiä kirjoittelemassa joilla ei ole tarkoituksena kuin satuttaa ihmisiä. Jos eksyt pals
      Ikävä
      114
      2160
    7. Saan kengurakkaan kotiin viikon päästä

      Mitä tapahtui? Martina hehkutti tätä stoorissaan reilu viikko sitten, mutta eipä aussimiestä Suomessa näkynyt, vaan tapa
      Kotimaiset julkkisjuorut
      250
      1587
    8. FinFamin ryhmät

      Älkää hyvät ihmiset luottako tähän tahoon. Ryhmiä on, mutta eivät ne toimi. Ihmisiä savustetaan ulos, vaikka näissä piir
      Salo
      0
      1381
    9. Osmo Peltola voitti ansaitusti Kultaisen Venlan - Kirvoitti yleisöltä mahtavan reaktion!

      JEE, onnea Osmo! Osmo Peltola voitti Vuoden esiintyjän Kultainen Venla -palkinnon. Isä-Peltsin ja Osmon luontoseikkailu
      Suomalaiset julkkikset
      76
      1213
    10. Olen vähän

      Hysteerinen se on totta. Etkai ymmärrä miten syvästi tunnen sinua kohtaan. Ja olet aina lähelläni. Olet osa jo jotain. I
      Ikävä
      10
      1145
    Aihe