모든 공백 제거 (Microsoft Excel)
Sudhakar에는 A 열에 후행 공백이있는 데이터가 있습니다. 데이터에 TRIM 함수를 사용하면 일부 후행 공백이 제거되지만 모두 제거되지는 않습니다. 그는 일부 공백이 생략되는 이유와이를 모두 제거 할 수있는 방법을 궁금해합니다.
실제로이 문제에 접근 할 수있는 몇 가지 방법이 있습니다.
귀하의 목적에 맞는 올바른 방법은 사용하는 데이터의 특성에 따라 변함없이 달라집니다.
우선, 셀에서 TRIM을 사용하는 경우 공백 만 제거된다는 점을 기억하십시오. 이것은 정의에 따라 ASCII 코드가 32 인 문자 만 제거한다는 것을 의미합니다. 불행히도 “공백”으로 표시되지만 실제로는 공백이 아닌 다른 ASCII 문자가 있습니다. 이들은 TRIM에 의해 제거되지 않습니다.
그 성가신 캐릭터가 뭔지 알아 내면 도움이 되겠죠? 셀의 텍스트가 그렇게 길지 않은 경우 여기에 셀 내용을보고 각 문자를 ASCII 값과 함께 차례로 표시하는 작은 매크로가 있습니다.
Sub StringContents() Dim sTemp As String Dim sMsg As String Dim J As Integer If Selection.Cells.Count > 1 Then sMsg = "Please select only one cell" Else sMsg = "Full string: >" & ActiveCell.Value & "<" & vbCrLf For J = 1 To Len(ActiveCell.Value) sTemp = Mid(ActiveCell.Value, J, 1) sMsg = sMsg & ">" & sTemp & "< " & Asc(sTemp) & vbCrLf Next J End If MsgBox sMsg End Sub
매크로를 사용하려면 테스트 할 단일 셀을 선택한 다음 실행하면됩니다. 문자열 내의 각 개별 문자와 함께 전체 문자열을 표시하는 메시지 상자가 나타납니다.
TRIM이 제거하지 않는 문제가되는 문자의 ASCII 값을 알고 나면 해당 문자를 대체 할 수 있습니다. 예를 들어, 공백이 아닌 공간에 ASCII 값 160이 표시되면 다음과 같은 방식으로 대체 할 수 있습니다.
=SUBSTITUTE(A1,CHAR(160)," ")
이것은 문자열의 ASCII 160 문자를 실제 공백 문자로 대체합니다. 유사하게 다른 유사한 가짜 공간을 제거 할 수 있습니다.
물론 다른 Excel 함수를 사용하여 다음과 같이 인쇄되지 않는 ASCII 문자를 제거 할 수 있습니다.
=CLEAN(A1)
모든 것을 제거하지는 않지만 불쾌한 캐릭터를 많이 정리하는 데 효과적입니다.
다음과 같은 방식으로 정리 공식에서 함수 결합을 시작할 수도 있습니다.
=TRIM(CLEAN(A1))
다음과 같은 방식으로 한 단계 더 나아갈 수 있습니다.
=TRIM(SUBSTITUTE(CLEAN(A2),CHAR(160)," "))
이 수식은 ASCII 160 문자와 CLEAN에 의해 잡힌 문자를 제거한 다음 해당 결과에 대해 TRIM을 수행합니다.
꽤 많은 셀을 청소해야하거나 셀을 정기적으로 청소해야하는 경우 매크로를 사용하여 무거운 작업을 수행하는 것이 좋습니다. 다음 매크로는 인쇄되지 않는 많은 문자를 제거하고 보이는 문자와 구두점 만 남깁니다.
Sub CleanCells() Dim rTarget As Range Dim c As Range Dim sTemp As String Dim J As Integer Set rTarget = Selection.SpecialCells(xlCellTypeConstants, 2) For Each c In rTarget sTemp = c.Value For J = 1 To 31 sTemp = Replace(sTemp, Chr(J), " ") Next J For J = 127 To 255 sTemp = Replace(sTemp, Chr(J), " ") Next J c.Value = sTemp Next c End Sub
매크로는 상수 값을 포함하는 현재 선택 내의 셀에서만 작동합니다. 즉, 수식을 포함하지 않는 셀입니다.
_ExcelTips_는 비용 효율적인 Microsoft Excel 교육을위한 소스입니다.
이 팁 (5132)은 Microsoft Excel 2007, 2010, 2013 및 2016에 적용됩니다.