Chris에는 부품 번호가 포함 된 셀이 많이 있습니다. 이러한 셀은 임의의 조합으로 숫자 또는 문자를 포함 할 수 있습니다. 대시, 슬래시 및 공백과 같은 특수 문자도 포함 할 수 있습니다.

Chris는 특수 문자를 고려하지 않고 셀에 숫자 만 포함되어 있는지 식별하는 방법이 필요합니다. 따라서 123-45를 포함하는 셀은 숫자 만 포함하는 것으로 표시되지만 123AB-45는 포함되지 않습니다.

주어진 셀에 허용 가능한 문자와 숫자 만 포함되어 있는지 알아내는 가장 쉬운 방법은 허용되는 숫자가 아닌 문자를 제거한 다음 결과 값이 숫자인지 확인하는 수식을 사용하는 것입니다. 다음 공식은 모두 트릭을 아주 잘 수행 할 수 있습니다.

=IF(IFERROR(INT(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,"-", ""),"/", "")," ", "")),FALSE), TRUE, FALSE)

=OR(ISNUMBER(SUBSTITUTE(A1,"-","")+0),ISNUMBER(SUBSTITUTE(A1,"/","")+0),ISNUMBER(SUBSTITUTE(A1," ","")+0))

=ISNUMBER(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1," ",""),"/",""),"-","")*1)

간단한 매크로를 사용하여 셀에 숫자와 허용 된 문자 만 포함되어 있는지 알아낼 수도 있습니다. 이러한 매크로에 접근 할 수있는 방법에는 여러 가지가 있지만 다음은 다소 쉬운 방법입니다.

Function DigitsOnly(sRaw As String) As Boolean     Dim X As Integer     Const sAllowed As String = "0123456789 -/"



Application.Volatile     For X = 1 To Len(sRaw)

If InStr(sAllowed, Mid(sRaw, X, 1)) = 0 Then Exit For     Next X     DigitsOnly = False     If X > Len(sRaw) Then DigitsOnly = True End Function

매크로는 전달되는 모든 것을 검사하여 문자열의 각 문자를 허용 된 문자 목록 (상수 sAllowed)과 비교합니다.

허용되지 않는 문자가 감지되면 루프가 일찍 종료되고 False 값이 반환됩니다. 따라서 A1에서 셀을 평가하려면 매크로에서 다음을 사용할 수 있습니다.

=DigitsOnly(A1)

True 또는 False 값을 반환하므로 이러한 접근 방식 (공식 또는 사용자 정의 함수)을 조건부 형식과 함께 사용하여 부품 번호의 형식을 변경할 수 있습니다.

_ 참고 : _

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

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

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

이 팁 (12654)은 Office 365의 Microsoft Excel 2007, 2010, 2013, 2016, 2019 및 Excel에 적용됩니다.