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

1814

    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. Lataus pakkaskelissä

      En olisi koskaan ostanut sähköautoa jos olisin tajunnut että ne eivät lataa pakkasissa suurteholatauksella vaan istut tu
      Hybridi- ja sähköautot
      105
      4204
    2. Kun väestö ikääntyy ja veronmaksajat vähenee, mitä sitten vasemmistolaiset?

      Maahanmuutto ei vaan ole ratkaisu väestön ikääntymiseen. Maahanmuutto lykkää ja hidastaa väestön ikääntymistä ja työv
      Maailman menoa
      57
      2408
    3. Miksei Trump ole kiinnostunut Suomen valloittamisesta?

      Täällähän on enemmän turvetta kuin Norjalla öljyä. Eikö Ttump ole turvenuija?
      Maailman menoa
      78
      1640
    4. Kyllä mä suren

      Sitä että mikään ei ole kuten ennen. Ei niitä hetkiä ja katseita. Toisaalta keho lepää eikä enää tarvitse sitä tuskaa ko
      Ikävä
      6
      1103
    5. Jos vielä joku päivä nähtäis...

      Miten suhtautuisit minuun, mies?
      Ikävä
      66
      854
    6. Nyt se on varmaa kuntajakoselvitys

      Ensi viikolla tuöee kuntaministeri ulos ja kertoo asiasta.
      Ähtäri
      21
      823
    7. Olet mies aika ailahteleva luonteeltasi

      Olen nähnyt kuinka olet iloinen, sosiaalinen ja osallistuva. Autat ja kannustat muita. Ja sitten olen nähnyt kuinka istu
      Ikävä
      118
      813
    8. Laitetaan nyt kirjaimet kohdilleen

      kuka rakastaa ja ketä ?
      Ikävä
      39
      792
    9. Olisin valmis tutustumaan uudelleen

      En menneisyyden kautta vaan haluaisin tutustua ihmiseen, jollaiseksi olet kasvanut.
      Ikävä
      50
      769
    10. Tiedät sen

      Esitän välinpitämätöntä, mutta en ole sitä oikeasti.
      Ikävä
      62
      768
    Aihe