Kirjaudu sisään Microsoft-tilillä
Kirjaudu sisään tai luo tili.
Hei,
Käytä toista tiliä.
Sinulla on useita tilejä
Valitse tili, jolla haluat kirjautua sisään.

Access lajittelee tietueet nousevaan tai laskevaan järjestykseen kirjainkoosta riippumatta. Voit kuitenkin lajitella tekstiä sen ASCII-merkkiarvojen mukaan, jos kirjoitat muutaman rivin VBA-koodia. ASCII-arvojen mukainen lajittelu erottaa isot kirjaimet pienistä kirjaimista sekä lajittelee tulokset kirjainkoon huomioon ottavaan järjestykseen.

Seuraavassa taulukossa esitetään, miten Accessin nouseva järjestyds eroaa kirjainkoon huomioon ottavasta järjestyksestä:

Lajittelua edeltävä järjestys

Nouseva järjestys

Kirjainkoon huomioon ottava järjestys

c

a

A

D

A

B

a

B

C

d

b

D

B

c

a

C

C

b

A

D

c

b

d

d

Vaikka Nouseva järjestys -sarakkeen tulokset saattavat aluksi näyttää jonkin verran odottamattomilta, ne eivät kuitenkaan sellaisia ole. Nouseva järjestys -sarakkeessa a on ennen A:ta ja B ennen b:tä. Tämä johtuu siitä, että tekstiarvoja arvioitaessa A = a ja B = b kirjainkoosta riippumatta. Access ottaa huomioon arvojen alkuperäisen järjestyksen. Lajittelua edeltävä järjestys -sarakkeessa a on ennen A:ta ja B ennen b:tä.

Kirjainkoon huomioon ottavassa lajittelussa tekstiarvot korvataan niiden ASCII-arvoilla. Esimerkiksi A = 65, a = 97, B = 66, b = 98 jne.

VBA-koodin kirjoittaminen

  1. Luo VBA-moduuli ja kirjoita seuraava rivi määrittelyosaan, jos sitä ei vielä siinä ole:

    Option Explicit

  2. Kirjoita seuraava toimintosarja moduuliin Visual Basic Editorissa:

    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

    Edellä esitetty käyttäjän määrittämä StrToHex-funktio voidaan kutsua kyselystä. Välittäessäsi lajittelukentän nimen tähän funktioon, se lajittelee kenttien arvot kirjainkoon huomioon ottavaan järjestykseen.

  3. Luo nyt kysely, josta kutsut tätä funktiota.

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

  4. Valitse Lisää taulukoita (Näytä taulukkoAccess 2013:ssa).

  5. Vedä ruudukkoon lisättävät kentät.

  6. Kirjoita Kenttä-rivin ensimmäiseen tyhjään sarakkeeseen Expr1: StrToHex([SortField]).

    StrToHex on aiemmin luomasi käyttäjän määrittämä funktio. SortField on kirjainkoon huomioon ottavia arvoja sisältävän kentän nimi.

  7. Valitse Lajittelu-solussa Nouseva tai Laskeva.

    Jos valitset nousevan järjestyksen, isoilla kirjaimilla alkavat arvot näytetään ennen pienillä kirjaimilla alkavia arvoja. Laskevaan järjestykseen lajitteleminen lajittelee arvot päinvastaisella tavalla.

  8. Vaihda taulukkonäkymään.

    Access näyttää tietueet kirjainkoon huomioon ottavaan järjestykseen lajiteltuna.

Sivun alkuun

Tarvitsetko lisäohjeita?

Haluatko lisää vaihtoehtoja?

Tutustu tilausetuihin, selaa harjoituskursseja, opi suojaamaan laitteesi ja paljon muuta.

Osallistumalla yhteisöihin voit kysyä kysymyksiä ja vastata niihin, antaa palautetta sekä kuulla lisää asiantuntijoilta, joilla on runsaasti tietoa.

Oliko näistä tiedoista hyötyä?

Kuinka tyytyväinen olet käännöksen laatuun?
Mikä vaikutti kokemukseesi?
Kun valitset Lähetä, palautettasi käytetään Microsoftin tuotteiden ja palveluiden parantamiseen. IT-järjestelmänvalvojasi voi kerätä nämä tiedot. Tietosuojatiedot.

Kiitos palautteesta!

×