Log på med Microsoft
Log på, eller opret en konto.
Hej
Markér en anden konto.
Du har flere konti
Vælg den konto, du vil logge på med.

Access sorterer poster i stigende eller faldende rækkefølge uden hensyntagen til store eller små bogstaver. Ved at skrive nogle få linjer VBA-kode (Visual Basic for Applications) kan du imidlertid sortere tekst efter ASCII-tegnværdierne. Sortering på grundlag af ASCII-værdierne adskiller de store bogstaver fra de små bogstaver og resulterer i en rækkefølge, hvor der skelnes mellem store og små bogstaver.

Følgende tabel viser, hvordan en stigende sorteringsrækkefølge i Access adskiller sig fra en sorteringsrækkefølge, der adskiller store og små bogstaver:

Forudsorteringsrækkefølge

Stigende rækkefølge

Rækkefølge med forskel på store og små bogstaver

c

a

A

D

A

B

a

B

C

d

b

D

B

c

a

C

C

b

A

D

c

b

d

d

Selvom resultaterne i kolonnen Stigende rækkefølge i starten muligvis ser lidt uforudsigelige ud, er de det ikke. I kolonnen Stigende rækkefølge vises "a" før "A" og " B" før "b". Dette sker, fordi "A" = "a" og "B" = "b", når de evalueres som tekstværdier, uanset om de er små eller store bogstaver. Access tager højde for værdiernes oprindelige rækkefølge. I kolonnen Forudsorteringsrækkefølge står "a" foran "A" og "B" foran "b".

Når sorteringshandlingen mellem store og små bogstaver udføres, erstattes tekstværdierne med deres ASCII-værdier. F.eks. A = 65, a = 97, B = 66, b = 98 osv.

Skriv VBA-koden

  1. Opret et VBA-modul, og skriv følgende linje i Erklæringssektion, hvis den ikke allerede findes:

    Option Explicit

  2. Skriv følgende fremgangsmåde i et modul i Visual Basic Editor:

    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

    Den foregående brugerdefinerede funktion, StrToHex, kan kaldes fra en forespørgsel. Når du videregiver navnet på sorteringsfeltet til denne funktion, sorterer den feltværdierne i rækkefølge, hvor der tages hensyn til store eller små bogstaver.

  3. Nu skal du oprette en forespørgsel, hvorfra du kan kalde denne funktion.

    Klik på Forespørgselsdesign i gruppen Forespørgsler under fanen Opret.

  4. Vælg Tilføj tabeller (Vis tabel i Access 2013).

  5. Træk de felter, du ønsker, til gitteret.

  6. I den første tomme kolonne i rækken Felt skal du skrive Expr1: StrToHex([SortField]).

    StrToHex er den brugerdefinerede funktion, du oprettede tidligere. SortField er navnet på det felt, der indeholder de værdier, der er følsomme over for store og små bogstaver.

  7. Klik på Stigende eller Faldende i cellen Sortér.

    Hvis du vælger stigende rækkefølge, vises værdien, der begynder med store bogstaver, før dem, der begynder med små bogstaver. Anvendelse af sortering i faldende rækkefølge gør det modsatte.

  8. Skift til dataarkvisning.

    Access viser posterne sorteret i rækkefølge, med hensyntagen til store og små bogstaver.

Toppen af siden

Har du brug for mere hjælp?

Vil du have flere indstillinger?

Udforsk abonnementsfordele, gennemse kurser, få mere at vide om, hvordan du sikrer din enhed og meget mere.

Communities hjælper dig med at stille og besvare spørgsmål, give feedback og høre fra eksperter med omfattende viden.

Var disse oplysninger nyttige?

Hvor tilfreds er du med kvaliteten af sproget?
Hvad påvirkede din oplevelse?
Når du trykker på Send, bliver din feedback brugt til at forbedre Microsoft-produkter og -tjenester. Din it-administrator kan indsamle disse data. Erklæring om beskyttelse af personlige oplysninger.

Tak for din feedback!

×