사무실 환경에서 다른 사람이 만든 Excel 파일로 작업하는 것은 드문 일이 아닙니다. 이러한 파일 중 일부는 만들 수있는 파일과 상당히 다를 수 있습니다. 예를 들어, 첫 번째 열에는 첫 번째 줄에 사람의 이름이 있고 두 번째 줄에 성이 포함 된 파일을 상속 할 수 있습니다. (사용자가 Alt + Enter를 눌러 동일한 셀 내에서 이름과 두 번째 이름을 구분했습니다.) 사용자의 성을 기준으로 워크 시트의 행을 정렬해야하는 경우 어떻게합니까?

이러한 작업을 완료하는 가장 좋은 방법은 워크 시트에 새 열 (B 열)을 삽입하는 것입니다. (이 열은 숨겨져있어 워크 시트에서 정상적으로 작업하거나 인쇄 할 때 표시되지 않을 수 있습니다.) 다음은 그런 다음 수식을 B 열의 각 셀에 배치해야합니다.

=RIGHT(A2,LEN(A2)-FIND(CHAR(10),A2))

분명히 셀 참조는 B 열에 배치 될 때 변경됩니다.이 공식에서 FIND 부분은 Alt + Enter 문자의 위치를 ​​결정합니다 (이 문자의 문자 코드는 10 임). RIGHT 함수는 Alt + Enter 문자 다음의 문자에서 시작하는 셀의 문자를 반환합니다. 이 솔루션은 첫 번째 열의 두 번째 줄에있는 정보를 포함하는 열 B가됩니다. 그런 다음 B 열의 정보를 기반으로 쉽게 정렬 할 수 있습니다.

이 솔루션에는 A 열의 각 셀에 두 줄만 있다는 가정이 하나 있습니다. 더 많거나 적 으면 솔루션이 더 어려워집니다. 이 경우 가장 좋은 (그리고 가장 쉬운) 솔루션은 정렬 키가 모두 열에 있도록 워크 시트의 서식을 다시 지정하는 것입니다. 어떤 이유로 든 가능하지 않은 경우 다음 사용자 정의 VBA 함수를 사용할 수 있습니다.

Function SecLine(x) As String     Dim B1 As Integer     Dim B2 As Integer          B1 = InStr(x, Chr(10))

B2 = InStr(B1 + 1, x, Chr(10))

If (B1 + B2) > 0 Then         If B2 > 0 Then             SecLine = Mid(x, B1 + 1, B2 – B1 - 1)

Else             SecLine = Mid(x, B1 + 1)

End If     End If End Function

이 루틴을 사용하려면 B 열의 셀에 다음을 포함하면됩니다.

=SecLine(A2)

A2 셀 (이 경우)에있는 줄 수에 관계없이 함수는 두 번째 줄의 값을 나타내는 문자열을 반환합니다.

_ 참고 : _

이 페이지 (또는 ExcelTips 사이트의 다른 페이지)에 설명 된 매크로를 사용하는 방법을 알고 싶다면 유용한 정보가 포함 된 특별 페이지를 준비했습니다.

link : / excelribbon-ExcelTipsMacros [새 브라우저 탭에서 특별 페이지를 열려면 여기를 클릭하세요].

_ExcelTips_는 비용 효율적인 Microsoft Excel 교육을위한 소스입니다.

이 팁 (2252)은 Microsoft Excel 97, 2000, 2002 및 2003에 적용됩니다. 여기에서 Excel (Excel 2007 이상)의 리본 인터페이스에 대한이 팁의 버전을 찾을 수 있습니다.

link : / excelribbon-Non-standard_Sorting [Non-standard Sorting].