Applies ToAccess pakalpojumam Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Access kārto ierakstus augošā vai dilstošā secībā, neatkarīgi no gadījuma. Tomēr, rakstot dažas Visual Basic for Applications (VBA) koda rindiņas, varat kārtot tekstu pēc tā ASCII rakstzīmju vērtībām. Kārtojot pēc ASCII vērtībām, lielie burti tiek izšķirti no mazajiem burtiem, un rezultātā rodas reģistrjutīga secība.

Šajā tabulā redzams, kā augoša kārtošanas secība programmā Access atšķiras no reģistrjutīgas kārtošanas secības.

Kārtošanas secība pirms kārtošanas

Augoša secība

Reģistrjutīga secība

c

a

A

D

A

B

a

B

C

d

b

D

B

c

a

C

C

b

A

D

c

b

d

d

Lai gan rezultāti augošas secības kolonnā sākumā var šķiet nedaudz neparedzēti, tie nav redzami. Kolonnā Augošā secībā pirms "A" tiek rādīts "a", bet pirms "b" tiek rādīts " B". Tas notiek tāpēc, ka, izvērtējot kā teksta vērtības, "A" = "a" un "B" = "b", gan mazie burti, gan lielie burti. Programma Access ņem vērā vērtību sākotnējo secību. Kolonnā Pirms kārtošanas secības pirms "a" un "B" ir "b".

Kad tiek veikta reģistrjutīga kārtošanas darbība, teksta vērtības tiek aizstātas ar to ASCII vērtībām. Piemēram, A = 65, a = 97, B = 66, b = 98 utt.

VBA koda rakstīšana

  1. Izveidojiet VBA moduli un deklarēšanas sadaļā ierakstiet šādu rindiņu, ja tā vēl nav:

    Option Explicit

  2. Visual Basic redaktora modulī ierakstiet šo procedūru:

    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
    

    No vaicājuma var izsaukt iepriekšējo lietotāja definēto funkciju StrToHex. Kad šai funkcijai nokārtojat kārtošanas lauka nosaukumu, tas kārto lauka vērtības reģistrjutīgā secībā.

  3. Tagad izveidojiet vaicājumu, no kura šai funkcijai būs jāzvana.

    Cilnes Izveide grupā Vaicājumi noklikšķiniet uz Vaicājuma noformējums.

  4. Atlasiet Pievienot tabulas (Rādīt tabulu programmā Access).

  5. Velciet laukus, kurus vēlaties pievienot režģim.

  6. Pirmās tukšās kolonnas rindā Lauks ierakstietExpr1: StrToHex([SortField]).

    StrToHex ir lietotāja definētā funkcija, ko izveidojāt iepriekš. SortField ir tā lauka nosaukums, kurā iekļautas reģistrjutīgas vērtības.

  7. Kārtošanas šūnā noklikšķiniet uz Augošā secībā vaiDilstošā secībā.

    Ja izvēlaties augošu secību, vērtība, kas sākas ar lielajiem burtiem, tiks parādīta pirms tiem, kas sākas ar mazajiem burtiem. Lietojot dilstošu secību, tiek lietots pretējais.

  8. Pārslēgtos uz datu lapas skatu.

    Programma Access parāda ierakstus, kas sakārtoti reģistrjutīgā secībā.

Uz lapas sākumu

Nepieciešama papildu palīdzība?

Vēlaties vairāk opciju?

Izpētiet abonementa priekšrocības, pārlūkojiet apmācības kursus, uzziniet, kā aizsargāt ierīci un veikt citas darbības.

Kopienas palīdz uzdot jautājumus un atbildēt uz tiem, sniegt atsauksmes, kā arī saņemt informāciju no ekspertiem ar bagātīgām zināšanām.