참고: 사용자 언어로 가능한 한 빨리 가장 최신의 도움말 콘텐츠를 제공하고자 합니다. 이 페이지는 자동화를 통해 번역되었으며 문법 오류나 부정확한 설명을 포함할 수 있습니다. 이 목적은 콘텐츠가 사용자에게 유용하다는 것입니다. 이 페이지 하단의 정보가 도움이 되었다면 알려주세요. 쉽게 참조할 수 있는 영어 문서가 여기 있습니다.
Microsoft Office Access 2007 오름차순 또는 내림차순 대/소문자에 관계 없이 레코드를 정렬 합니다. 하지만, 몇 줄의 Visual Basic for Applications (VBA) 코드를 작성 하 여 해당 ASCII 문자 값으로 텍스트를 정렬할 수 있습니다. 대/소문자 구분 순서로 결과와 소문자, 대문자 구별 ASCII 값을 기준으로 정렬 합니다.
다음 표에서 Access에서 오름차순 정렬 순서는 대/소문자 구분 정렬 순서에서 어떻게 다른 지를 보여 줍니다.
사전 정렬 순서 | 오름차순으로 정렬 | 대/소문자 구분 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 |
오름차순 정렬 열에 결과가 나타날 수 있지만 처음에 어느 정도 예상치 못한, 되지 않습니다. 오름차순 순서 열에서 "를" 표시 "A", "B" "b" 앞 표시 되기 전에 이 때문에 발생 텍스트 값, "A"로 평가 하는 경우, = "a", "B" = "b" 대 / 소문자 여부를 합니다. Access는 값의 원래 순서를 고려합니다. 사전 정렬 순서 열에 "를" 앞에 "A" 및 "B" 보다 앞에 "b"
대/소문자 구분 정렬 작업을 수행할 때 텍스트 값 해당 ASCII 값으로 바뀝니다. 예를 들어 A = 65는 = 97, B = 66, b = 98 등에 합니다.
VBA 코드 작성
-
VBA 모듈을 만들고이 아닌 선언 섹션에서 다음 줄을 입력 합니다.
명시적 옵션
-
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쿼리를 통해 위의 사용자 정의 함수, StrToHex를 호출할 수 있습니다. 정렬 필드의 이름을이 함수에 전달 하면 필드 값은 대/소문자 구분 순서로 정렬 됩니다.
-
이제이 함수는 전화할 쿼리를 만듭니다.
만들기 탭의 쿼리 그룹에서 쿼리 디자인을 클릭합니다.
-
테이블 표시 대화 상자에서 테이블을 정렬 하려면을 클릭 한 다음 추가클릭 합니다.
-
눈금에 표시할 필드를 끌어 놓습니다.
-
필드 행의 첫 번째 빈 열에 입력 Expr1: StrToHex([SortField])합니다.
StrToHex 이전에 만든 사용자 정의 함수입니다. SortField 대/소문자 구분 된 값을 포함 하는 필드 이름입니다.
-
정렬 셀에서 오름차순 또는 내림차순을 클릭 합니다.
오름차순을 선택 하면 대문자로 시작 하는 값 소문자로 시작 하는 보다 먼저 표시 됩니다. 내림차순 순서 정렬 적용 반대 동작을 수행 합니다.
-
데이터 시트 보기로 전환 합니다.
레코드가 대/소문자 구분 순서로 정렬 되어 표시 됩니다.