Sắp xếp bản ghi theo thứ tự chữ

Quan trọng:  Bài viết này là dịch máy, hãy xem tuyên bố miễn trừ trách nhiệm. Bạn hãy tìm phiên bản tiếng Anh của bài viết này tại đây để tham khảo.

Microsoft Office Access 2007 sắp xếp các bản ghi theo thứ tự tăng dần hoặc giảm dần bất kể trường hợp. Tuy nhiên, bằng cách viết một vài đường Visual Basic for Applications (VBA) mã, bạn có thể sắp xếp văn bản bằng giá trị ký tự ASCII của nó. Sắp xếp dựa trên các giá trị ASCII phân biệt chữ hoa chữ cái từ chữ và kết quả theo thứ tự chữ.

Bảng sau đây thể hiện cách một thứ tự sắp xếp tăng dần trong Access có khác so với một thứ tự chữ sắp xếp:

Thứ tự sắp xếp trước

Thứ tự tăng dần

Chữ orde r

"c"

a

A

D

Một

B

a

B

C

d

b

D

B

"c"

a

C

C

b

A

D

"c"

b

d

d

Mặc dù kết quả trong cột thứ tự tăng dần có thể lúc đầu hiển thị hơi không thể dự đoán, họ sẽ không. Trong cột thứ tự tăng dần, "một" xuất hiện trước khi "A" và "B" xuất hiện trước "b". Điều này xảy ra vì, khi đánh giá là giá trị văn bản, "A" = "một" và "B" = "b," hay không, chữ thường hoặc viết hoa. Access sẽ đưa vào tài khoản gốc thứ tự của các giá trị. Trong cột thứ tự sắp xếp trước, "một" xảy ra trước "A" và "B" xảy ra trước "b".

Khi đã thực hiện thao tác sắp xếp chữ, các giá trị văn bản được thay thế bằng giá trị ASCII. Ví dụ, A = 65, một = 97, B = 66, b = 98, v.v..

Ghi mã VBA

  1. Tạo một mô-đun VBA và nhập dòng sau đây trong phần khai báo, nếu nó chưa có:

Option Explicit

  1. Nhập quy trình sau đây trong một mô-đun trong trình soạn thảo Visual Basic:

    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

    Trước đã xác định người dùng hàm, StrToHex, có thể được gọi là từ một truy vấn. Khi bạn chuyển tên của trường sắp xếp cho hàm này, nó sẽ sắp xếp các giá trị trường theo thứ tự chữ.

  2. Bây giờ, tạo truy vấn mà bạn sẽ gọi hàm này.

    Trên tab Tạo, trong nhóm Khác, bấm Thiết kế Truy vấn.

  3. Trong hộp thoại Hiện bảng , bấm vào bảng mà bạn muốn sắp xếp, sau đó bấm Thêm.

  4. Kéo các trường bạn muốn vào lưới.

  5. Trong cột trống đầu tiên, trong hàng trường , hãy nhập Expr1: StrToHex([SortField]).

    StrToHex là hàm do người dùng xác định bạn đã tạo trước đó. SortField là tên của trường có chứa các giá trị chữ.

  6. Trong ô sắp xếp , hãy bấm tăng dần hoặc giảm dần.

    Nếu bạn chọn thứ tự tăng dần, giá trị bắt đầu bằng chữ hoa chữ cái sẽ xuất hiện trước những bắt đầu bằng chữ cái. Áp dụng một sắp xếp thứ tự giảm dần nào ngược với việc.

  7. Chuyển sang dạng xem biểu dữ liệu.

    Access Hiển thị các bản ghi, được sắp xếp theo thứ tự chữ.

Đầu trang

Ghi chú: Tuyên bố miễn trừ trách nhiệm Dịch Máy: Bài viết này do một hệ thống máy tính dịch mà không có sự can thiệp của con người. Microsoft cung cấp những bản dịch máy này để giúp người dùng không nói tiếng Anh hiểu nội dung về các sản phẩm, dịch vụ và công nghệ của Microsoft. Do bài viết này được dịch máy nên có thể có các lỗi về từ vựng, cú pháp hoặc ngữ pháp.

Phát triển các kỹ năng của bạn
Khám phá nội dung đào tạo
Sở hữu tính năng mới đầu tiên
Tham gia Người dùng nội bộ Office

Thông tin này có hữu ích không?

Cảm ơn phản hồi của bạn!

Cảm ơn bạn đã phản hồi! Để trợ giúp tốt hơn, có lẽ chúng tôi sẽ kết nối bạn với một trong những nhân viên hỗ trợ Office của chúng tôi.

×