Tietueiden lajitteleminen kirjainkoon mukaan

Huomautus: Microsoft haluaa tarjota sinulle ajantasaisinta ohjesisältöä mahdollisimman nopeasti omalla kielelläsi. Tämä sivu on käännetty automaation avulla, ja siinä saattaa olla kielioppivirheitä tai epätarkkuuksia. Tarkoitus on, että sisällöstä on sinulle hyötyä. Kertoisitko sivun alareunassa olevan toiminnon avulla, oliko tiedoista hyötyä? Tästä pääset helposti artikkelin englanninkieliseen versioon.

Microsoft Office Access 2007 lajittelee tietueet nousevaan tai laskevaan järjestykseen kirjainkokoa. Muutama VBA Visual Basic for Applications (VBA)-koodin voi kuitenkin lajitella tekstin mukaan arvonsa ASCII-merkki. Isot kirjaimet eristää pienten kirjainten ja tulokset kirjainkoon mukaan lajittelu ASCII-arvoja.

Seuraavassa taulukossa esitellään, miten Lajittele nousevaan järjestykseen Accessissa eroaa lajittelu kirjainkoon mukaan:

Vanhat lajittelujärjestys

Nousevassa järjestyksessä

Kirjainkoon huomioon Kohdehistoria r

c

a

A

D

A

B

a

B

C

p

b

D

B

c

a

C

C

b

A

D

c

b

p

p

Vaikka Nouseva järjestys-sarakkeessa olevat tulokset voivat näyttää hieman odottamattomia, ne eivät ole. Nouseva järjestys-sarakkeessa ”a” tulee ennen ”A” ja ”B” ennen ”b”. Tämä johtuu siitä, kun tekstiarvoina, ”A” = ”a” ja ”B” = ”b” edeltää merkkiä. Accessin otetaan huomioon arvot alkuperäinen tilaus. Vanhat lajittelujärjestys-sarakkeessa ”a” edeltää ”A” ja ”B” edeltää ”b”.

Kun kirjainkoko on merkitsevä Lajittele suoritetaan, tekstiarvot korvataan niiden ASCII-arvot. Esimerkiksi A = 65, = 97, B = 66 ja b = 98 ja niin edelleen.

VBA-koodin kirjoittaminen

  1. Luo VBA-moduulissa ja kirjoita seuraava rivi määrittelyosa, ellei se ole jo:

Eksplisiittinen asetus

  1. Kirjoita moduuli Visual Basic-editorin seuraavasti:

    Function StrToHex (S As Variant) As Variant
    '
    ' Converts a string to a series of hexadecimal digits.
    ' For example, StrToHex(Chr(9) & "A~") returns 09417E.
    '
    Dim Temp As String, I As Integer
    If VarType(S) <> 8 Then
    StrToHex = S
    Else
    Temp = ""
    For I = 1 To Len(S)
    Temp = Temp & Format(Hex(Asc(Mid(S, I, 1))), "00")
    Next I
    StrToHex = Temp
    End If
    End Function

    Edeltävä käyttäjän määrittämä funktio, StrToHex, voit kutsua kyselystä. Lajittelukentän nimen välittää tätä toimintoa, kun se lajitellaan kenttäarvojen kirjainkoon mukaan.

  2. Nyt Luo kysely, josta soitat tätä toimintoa.

    Valitse Luo-välilehden Muut-ryhmässä Kyselyn rakennenäkymä.

  3. Näytä taulukko -valintaikkunassa taulukkoa, jonka haluat lajitella ja valitse sitten Lisää.

  4. Vedä haluamasi kentät ruudukkoon.

  5. Kirjoita ensimmäisen tyhjän sarakkeen kenttä -riville Lauseke1: StrToHex([lajittelukenttä]).

    StrToHex on aiemmin luotu käyttäjän määrittämä funktio. Lajittelukenttä on merkitsevä arvot sisältävän kentän nimi.

  6. Valitse Lajittele -solun Nouseva tai Laskeva.

    Jos valitset nousevassa järjestyksessä, isoilla kirjaimilla alkava arvo näkyy ennen ne, jotka alkavat pienet kirjaimet. Käyttämällä laskevan järjestyksen tekee päinvastainen.

  7. Siirry taulukkonäkymään.

    Access näyttää tietueet kirjainkoon mukaan lajiteltuina.

Sivun alkuun

Kehitä Office-taitojasi
Tutustu koulutusmateriaaliin
Saat uudet ominaisuudet ensimmäisten joukossa
Liity Office Insider -käyttäjiin

Oliko näistä tiedoista hyötyä?

Kiitos palautteesta!

Kiitos palautteestasi! Näyttää siltä, että Office-tukiedustajamme avusta voi olla sinulle hyötyä.

×