Sortiranje zapisa redoslijedom koji razlikuje velika i mala slova

Napomena: Željeli bismo vam pružiti najnoviji sadržaj pomoći što je brže moguće i to na vašem jeziku. Ova je stranica strojno prevedena te može sadržavati gramatičke pogreške ili netočnosti. Naša je namjera da vam ovaj sadržaj bude koristan. Možete li nam pri dnu ove stranice javiti jesu li vam ove informacije bile korisne? Kao referencu možete pogledati i članak na engleskom jeziku.

Microsoft Office Access 2007 sortira zapise uzlaznim ili silaznim redoslijedom bez obzira na to slučaj. Međutim, pisanjem nekoliko redaka Visual Basic for Applications (VBA) kod tekst možete sortirati prema njegovim vrijednostima ASCII znakova. Sortiranje temeljeno na ASCII vrijednostima razlikuje velika slova s malim slovima i rezultata redoslijedom velika i mala slova.

Sljedeća tablica pokazuje kako uzlazni redoslijed sortiranja u programu Access razlikuje se od velika i mala slova sortiranja:

Unaprijed redoslijed sortiranja

Uzlaznim redoslijedom

Orde velika i mala slova r

c

a

A

D

A

B

a

B

C

d

b

D

B

c

a

C

C

b

A

D

c

b

d

d

Iako rezultate u stupcu uzlazni redoslijed činiti nepredvidljivima, nisu. U stupcu uzlazni redoslijed "u" pojavljuje se prije "A" i "B" dolazi prije "b". To se događa jer, kada se vrednuju kao tekstne vrijednosti, "A" = "u" i "B" = "b", hoće li se mala slova i početnih velikih slova. Access uzima u obzir redoslijed izvorne vrijednosti. U stupcu redoslijed sortiranja stara "u" prethodi "A" i "B" prethodi "b".

Kada se provodi operacija sortiranje velika i mala slova, tekstualne vrijednosti se zamjenjuju njihove ASCII vrijednosti. Na primjer, A = 65; na = 97, B = 66, b = 98 i tako dalje.

VBA kod

  1. Stvaranje VBA modulu, a zatim upišite sljedeći redak u odjeljak s deklaracijama ako već nije ondje:

Mogućnost eksplicitnih

  1. U modul u programu Visual Basic Editor upišite sljedeći postupak:

    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

    Na prethodni korisnički definiranih funkcija naziva se iz upita. Nakon što prođete naziv polja Sortiraj ove funkcije, će sortirati vrijednosti polja redoslijedom velika i mala slova.

  2. Sada stvorite upit iz kojih ćete pozivati ovu funkciju.

    Na kartici Stvaranje u grupi Ostalo kliknite Dizajn upita.

  3. U dijaloškom okviru Prikaz tablice kliknite tablicu koju želite sortirati, a zatim kliknite Dodaj.

  4. Povucite željena polja u rešetku.

  5. U prvom praznom stupcu, u retku polje upišite Izraz1: StrToHex([SortField]).

    StrToHex je korisnički definirana funkcija koju ste ranije stvorili. SortField je naziv polja koji sadrži vrijednosti za velika i mala slova.

  6. U ćeliju sortiranja , kliknite Uzlazno ili Silazno.

    Ako odaberete uzlazno, vrijednost započinje velikim slovima pojavit će se prije onih koje započinju s malim slovima. Primjena silazni redoslijed sortiranja čini suprotno.

  7. Prijeđite u prikaz podatkovne tablice.

    Access prikazuje zapise sortirane redoslijedom velika i mala slova.

Vrh stranice

Proširite svoje vještine korištenja sustava Office
Istražite osposobljavanje

Jesu li vam ove informacije bile korisne?

Hvala vam na povratnim informacijama!

Hvala vam na povratnim informacijama! Čini se da bi vam pomoglo kad bismo vas povezali s nekim od naših agenata podrške za Office.

×