Applies ToMicrosoft 365-höz készült Access Access 2024 Access 2021 Access 2019 Access 2016

Access a rekordokat emelkedő vagy csökkenő sorrendbe rendezi kis- és nagybetű megkülönböztetése nélkül. De néhány sornyi VBA-kód írásával sorba rendezheti a szöveget az ASCII-karakterértékei alapján. Az ASCII-értékek alapján való sorba rendezés megkülönbözteti a kis- és nagybetűket, így egy kis- és nagybetűket megkülönböztető sorrend jön létre.

A következő táblázatban láthatja, hogy az emelkedő rendezési sorrend az Accessben hogyan tér el a kis- és nagybetűket megkülönböztető sorrendtől:

Rendezés előtti sorrend

Emelkedő sorrend

Kis- és nagybetűt megkülönböztető sorrend

c

a

A

D

A

B

a

B

C

n

b

D

B

c

a

C

C

b

A

D

c

b

n

n

Annak ellenére, hogy az Emelkedő sorrend oszlopában található eredmények elsőre megjósolhatatlannak tűnnek, nem azok. Az Emelkedő sorrend oszlopában az „a“ az „A“ előtt jelenik meg, és a „B“ a „b“ előtt. Ez azért történik, mert amikor szövegértékekként vannak értékelve, az „A“ egyenlő „a“-val, és „B“ egyenlő „b“-vel, kis- és nagybetűre való tekintet nélkül. Az Access az értékek eredeti sorrendjét veszi figyelembe. A rendezés előtti sorrendbeli oszlopban „a“ megelőzi „A“-t és „B“ a „b“-t.

Amikor a kis- és nagybetűt megkülönböztető sorrendműveletet végrehajtják, az ASCII-értékek veszik át a szövegértékek helyét. Például: A = 65, a = 97, B = 66, b = 98, és így tovább.

VBA-kód írása

  1. Hozzon létre egy VBA-modult és írja be a következő sort a deklarációs szakaszba, ha még nincsen ott:

    Option Explicit

  2. Írja be a következő eljárást a Visual Basic Editorben található modulba:

    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
    

    Az előző felhasználó által definiált függvény, StrToHex, a lekérdezésből hívható le. Amikor továbbítja a rendezési mező nevét ehhez a függvényhez, a mezőértékeket a kis- és nagybetűt megkülönböztető sorrendbe rendezi.

  3. Hozzon létre egy lekérdezést, amelyből ezt a függvényt fogja hívni.

    Kattintson a Létrehozás lap Lekérdezések csoportjának Lekérdezéstervező gombjára.

  4. Válassza a Táblák hozzáadása (Tábla megjelenítése az Accessben) lehetőséget.

  5. Húzza a rácsra azokat a területeket, amelyeket használni szeretne.

  6. Az első üres oszlopban, a Mező sorban, írja be ezeket: Expr1: StrToHex([SortField]).

    StrToHex a felhasználó által definiált függvény, amelyet korábban hozott létre. A SortField azon mező neve, amely a kis- és nagybetű megkülönböztetésével kapcsolatos értékeket tartalmazza.

  7. A Sorrend mezőben kattintson a Növekvő vagy a Csökkenő beállításra.

    Ha az emelkedő sorrendet választja, a nagybetűvel kezdődő értékek a kisbetűs értékek előtt fognak megjelenni. Egy csökkenő rendezési sorrend alkalmazása az ellenkezőt hajtja végre.

  8. Adatlap nézetre váltás.

    Az Access a rekordokat kis- és nagybetűket megkülönböztető sorrendben jeleníti meg.

Vissza a lap tetejére

További segítségre van szüksége?

További lehetőségeket szeretne?

Fedezze fel az előfizetés előnyeit, böngésszen az oktatóanyagok között, ismerje meg, hogyan teheti biztonságossá eszközét, és így tovább.

A közösségek segítségével kérdéseket tehet fel és válaszolhat meg, visszajelzést adhat, és részletes ismeretekkel rendelkező szakértőktől hallhat.