대/소문자를 구분하여 레코드 정렬

참고:  사용자 언어로 가능한 한 빨리 가장 최신의 도움말 콘텐츠를 제공하고자 합니다. 이 페이지는 자동화를 통해 번역되었으며 문법 오류나 부정확한 설명을 포함할 수 있습니다. 이 목적은 콘텐츠가 사용자에게 유용하다는 것입니다. 이 페이지 하단의 정보가 도움이 되었다면 알려주세요. 쉽게 참조할 수 있는 영어 문서 가 여기 있습니다.

Microsoft Office Access 2007에서는 레코드가 대/소문자에 관계없이 오름차순 또는 내림차순으로 정렬됩니다. 그러나 VBA(Visual Basic for Applications) 코드를 몇 줄 작성하면 텍스트를 해당 ASCII 문자 값에 따라 정렬할 수 있습니다. ASCII 값을 기준으로 정렬하는 경우 대문자와 소문자가 구분되기 때문에 텍스트가 대/소문자가 구분된 순서로 정렬됩니다.

다음 표에서는 Access의 오름차순 정렬 순서가 대/소문자가 구분된 정렬 순서와 어떻게 다른지 보여 줍니다.

정렬 전의 순서

오름차순

대/소문자 구분 orde r

c

a

A

D

수식

설명(결과)

a

설명(결과)

C

d

b

D

B

c

a

C

C

b

A

D

c

b

d

d

오름차순 순서 열의 결과에는 법칙이 없는 것처럼 보일 수도 있지만 실제로는 법칙이 있습니다. 오름차순 순서 열에서 "a"는 "A" 앞에, 그리고 "B"는 "b" 앞에 나타납니다. 이는 텍스트 값으로 계산되는 경우 대/소문자에 관계없이 "A" = "a"이고 "B" = "b"인데, 정렬 전 "a"는 "A" 앞에 있었고 "B"는 "b" 앞에 있었으므로 Access에서 이와 같은 값의 원래 순서를 고려했기 때문입니다.

대/소문자 구분 정렬 작업을 실행하면 텍스트 값이 해당 ASCII 값으로 바뀝니다. 예를 들면 A = 65, a = 97, B = 66, b = 98 등입니다.

VBA 코드 작성

  1. VBA 모듈을 만들고 선언 구역에 다음 줄이 없으면 입력합니다.

Option Explicit

  1. 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를 쿼리에서 호출할 수 있습니다. 정렬 필드의 이름을 이 함수에 전달하면 필드 값이 대/소문자가 구분된 순서로 정렬됩니다.

  2. 이제 이 함수를 호출할 쿼리를 만듭니다.

    만들기 탭의 기타 그룹에서 쿼리 디자인을 클릭합니다.

  3. 테이블 표시 대화 상자에서 정렬할 테이블을 클릭하고 추가를 클릭합니다.

  4. 원하는 필드를 눈금으로 끌어서 놓습니다.

  5. 필드 행의 첫 번째 빈 열에 입력 Expr1: StrToHex([SortField])합니다.

    StrToHex는 앞에서 만든 사용자 정의 함수이고 SortField는 대/소문자가 구분된 값이 들어 있는 필드의 이름입니다.

  6. 정렬 셀에서 오름차순 또는 내림차순을 클릭합니다.

    오름차순을 선택하면 대문자로 시작하는 값이 소문자로 시작하는 값 앞에 표시되고 내림차순을 적용하면 이와 반대로 정렬됩니다.

  7. 데이터시트 보기로 전환합니다.

    레코드가 대/소문자가 구분된 순서로 정렬되어 표시됩니다.

맨 위로 이동

Office 기술 확장
교육 살펴보기
새로운 기능 우선 가져오기
Office Insider 참여

이 정보가 유용한가요?

의견 주셔서 감사합니다!

피드백을 주셔서 감사합니다. Office 지원 에이전트와 연락하는 것이 도움이 될 것 같습니다.

×