Sortieren von Datensätzen mit Berücksichtigung der Groß-/Kleinschreibung

Wichtig :  Dieser Artikel wurde maschinell übersetzt. Bitte beachten Sie den Haftungsausschluss. Die englische Version des Artikels ist als Referenz hier verfügbar: hier.

In Microsoft Office Access 2007 werden Datensätze ohne Berücksichtigung der Groß-/Kleinschreibung in aufsteigender oder absteigender Reihenfolge sortiert. Durch Schreiben einiger VBA-Codezeilen (Visual Basic für Applikationen) können Sie jedoch Text nach den ASCII-Zeichenwerten sortieren. Bei der Sortierung auf der Basis der ASCII-Werte wird zwischen Großbuchstaben und Kleinbuchstaben unterschieden, sodass sich eine Reihenfolge mit Berücksichtigung der Groß-/Kleinschreibung ergibt.

Die folgende Tabelle veranschaulicht die Unterschiede zwischen einer aufsteigenden Sortierreihenfolge in Access und einer Sortierreihenfolge mit Berücksichtigung der Groß-/Kleinschreibung:

Reihenfolge vor der Sortierung

Aufsteigende Reihenfolge

Groß-/Kleinschreibung orde 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

Obwohl die Ergebnisse in der Spalte Aufsteigende Reihenfolge zunächst unvorhersehbar scheinen mögen, ist dies nicht der Fall. In der Spalte Aufsteigende Reihenfolge wird "a" vor "A" und "B" vor "b" angezeigt. Dies ist der Fall, da bei der Auswertung als Textwerte unabhängig von der Groß-/Kleinschreibung Folgendes gilt: "A" = "a" und "B" = "b". In Access wird die ursprüngliche Reihenfolge der Werte berücksichtigt. In der Spalte Reihenfolge vor der Sortierung steht "a" vor "A" und "B" vor "b".

Wenn der Sortiervorgang mit Berücksichtigung der Groß-/Kleinschreibung ausgeführt wird, werden die Textwerte durch ihre ASCII-Werte ersetzt. Beispielsweise A = 65, a = 97, B = 66, b = 98 usw.

Schreiben des VBA-Codes

  1. Erstellen Sie ein VBA-Modul, und geben Sie die folgende Zeile in den Deklarationsbereich ein, falls sie noch nicht dort angezeigt wird:

Option Explicit

  1. Geben Sie die folgende Prozedur in ein Modul im Visual Basic-Editor ein:

    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

    Die vorstehende benutzerdefinierte StrToHex-Funktion kann aus einer Abfrage aufgerufen werden. Wenn Sie den Namen des Sortierfelds an diese Funktion weitergeben, werden die Feldwerte mit Berücksichtigung der Groß-/Kleinschreibung sortiert.

  2. Erstellen Sie jetzt eine Abfrage, aus der Sie diese Funktion aufrufen werden.

    Klicken Sie auf der Registerkarte Erstellen in der Gruppe Andere auf Abfrageentwurf.

  3. Klicken Sie im Dialogfeld Tabelle anzeigen auf die zu sortierende Tabelle, klicken Sie dann auf Hinzufügen.

  4. Ziehen Sie die gewünschten Felder in das Raster.

  5. Geben Sie in der ersten leeren Spalte, in der Zeile FeldAusdruck1: StrToHex([SortField]).

    StrToHex ist die benutzerdefinierte Funktion, die Sie vorher erstellt haben. SortField ist der Name des Felds, das die Werte mit Berücksichtigung der Groß-/Kleinschreibung enthält.

  6. Klicken Sie in der Zelle Sortieren auf Aufsteigend oder auf Absteigend.

    Wenn Sie die aufsteigende Reihenfolge ausgewählt haben, werden Werte, die mit Großbuchstaben beginnen, vor den mit Kleinbuchstaben beginnenden angezeigt. Das Anwenden einer absteigenden Reihenfolge bewirkt das Gegenteil.

  7. Wechseln Sie zur Datenblattansicht.

    In Access werden die Datensätze sortiert mit Berücksichtigung der Groß-/Kleinschreibung angezeigt.

Seitenanfang

Hinweis : Haftungsausschluss für maschinelle Übersetzungen: Dieser Artikel wurde mithilfe eines Computersystems und ohne jegliche Bearbeitung durch Personen übersetzt. Microsoft bietet solche maschinellen Übersetzungen als Hilfestellung für Benutzer ohne Englischkenntnisse an, damit Sie von den Informationen zu Produkten, Diensten und Technologien von Microsoft profitieren können. Da es sich bei diesem Artikel um eine maschinelle Übersetzung handelt, enthält er möglicherweise Fehler in Bezug auf (Fach-)Terminologie, Syntax und/oder Grammatik.

Teilen Facebook Facebook Twitter Twitter E-Mail E-Mail

War diese Information hilfreich?

Sehr gut. Noch anderes Feedback?

Was können wir verbessern?

Vielen Dank für Ihr Feedback!

×