Sortiranje zapisa po redosledu koji razlikuje mala i velika slova

Napomena: Želimo da vam što pre pružimo najnoviji sadržaj pomoći čim na vašem jeziku. Ova stranica je prevedena automatski i može da sadrži gramatičke greške ili netačnosti. Naš cilj je da ovaj sadržaj bude koristan. Možete li nam na dnu ove stranice saopštiti da li su vam informacije bile od koristi? Ovo je članak na engleskom jeziku za brzu referencu.

Microsoft Office Access 2007 sortira zapise po rastućem ili opadajućem redosledu bez obzira na veličinu slova. Međutim, tako što napišete nekoliko redova programa Visual Basic for Applications (VBA) kôd, možete sortirati tekst ASCII vrednostima znakova. Sortiranje na ASCII vrednostima razlikuje velika slova od malih slova, kao i rezultate u nalogu za mala i velika slova.

Sledeća tabela pokazuje kako po rastućem redosledu u programu Access se razlikuje od redosled sortiranja za mala i velika slova:

Unapred redosled sortiranja

Rastući redosled

Mala i velika slova Ord 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 toj koloni u početku izgledaće pomalo nepredvidiv, nisu. U toj koloni, „a” pojavljuje pre „A” i „B” se pojavljuje pre „b”. Do toga dolazi jer, kada se izračunava kao tekstualne vrednosti, „A” = „a” i „B” = „b”, da li je velika ili mala slova. Access uzima u obzir prvobitni redosled vrednosti. U koloni redosled pre sortiranja „a” prethodi „A” i „B” prethodi „b”.

Kada se operacija sortiranja mala i velika slova, tekstualne vrednosti se zamenjuju njihove ASCII vrednosti. Na primer, A = 65 u = 97, B = 66, b = 98, i tako dalje.

Pisanje VBA koda

  1. Kreiranje VBA modulu i otkucajte sledeći red u odeljku deklaracija, ako već nije tamo:

Opcija eksplicitno

  1. U modulu Visual Basic Editor otkucajte sledeću proceduru:

    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

    Prethodna korisnički definisana funkcija "StrToHex" može se pozvati iz upita. Kada prođete ime polja za sortiranje za ovu funkciju, to će se sortirati vrednosti polja u redosledu mala i velika slova.

  2. Sada kreirajte upit iz kojih ćete pozvati ovu funkciju.

    Na kartici Pravljenje, u grupi Ostalo kliknite na dugme Dizajn upita.

  3. U dijalogu Prikazivanje tabele kliknite na tabelu koju želite da sortirate, a zatim kliknite na dugme Dodaj.

  4. Prevucite polja koja želite u koordinatnu mrežu.

  5. U prvoj praznoj koloni, u redu polje otkucajte Expr1: StrToHex()[PoljeZaSortiranje]).

    StrToHex je korisnički definisana funkcija koju ste ranije kreirali. PoljeZaSortiranje je ime polja koje sadrži vrednosti za mala i velika slova.

  6. U ćeliji Sortiranje izaberite stavku rastući redosled ili Opadajući redosled.

    Ako odaberete da rastućim redosledom, vrednost koja počinje velikim slovima pojaviće se pre onih koje počinju malim slovima. Primena Opadajući redosled sortiranja obrnuta.

  7. Prebacite se na prikaz lista sa podacima.

    Access prikazuje zapise sortirane po redosledu mala i velika slova.

Vrh stranice

Razvijte Office veštine
Istražite obuku
Prvi nabavite nove funkcije
Pridružite se Office Insider korisnicima

Da li su vam ove informacije koristile?

Hvala vam na povratnim informacijama!

Hvala za povratne informacije! Izgleda da će biti od pomoći ako vas povežemo sa našim agentima Office podrške.

×