출처: https://ko.extendoffice.com/documents/excel/2133-excel-remove-duplicate-characters-in-ssortingng.html?PageSpeed=noscript&page_comment=1
셀 문자열에서 중복 문자 또는 단어를 제거하는 방법은 무엇입니까?
각 셀에 중복 문자 나 단어가 있고 중복을 제거하고 고유 한 문자 나 단어 만 남기고 싶다고 가정합니다. Excel에서이 문제를 어떻게 해결할 수 있습니까?
사용자 정의 함수를 사용하여 구두점으로 구분 된 중복 단어 제거
사용자 정의 함수로 텍스트 문자열의 중복 문자 제거
텍스트 문자열 목록이있는 경우 다음 스크린 샷과 같이 중복 문자를 제거해야합니다. 여기에서 VBA 코드에 대해 이야기 할 수 있습니다.
1. 누르고 ALT + F11 키를 눌러 Microsoft Visual Basic for Applications 창.
2. 딸깍 하는 소리 끼워 넣다 > 모듈을 클릭하고 다음 코드를 모듈 창.
VBA 코드 : 셀에서 텍스트 문자열의 중복 문자 제거
Function RemoveDupes1(pWorkRng As Range) As String
'Updateby Extendoffice
Dim xValue As String
Dim xChar As String
Dim xOutValue As String
Set xDic = CreateObject("Scripting.Dictionary")
xValue = pWorkRng.Value
For i = 1 To VBA.Len(xValue)
xChar = VBA.Mid(xValue, i, 1)
If xDic.Exists(xChar) Then
Else
xDic(xChar) = ""
xOutValue = xOutValue & xChar
End If
Next
RemoveDupes1 = xOutValue
End Function
Function RemoveDupes1(pWorkRng As Range) As String 'Updateby Extendoffice Dim xValue As String Dim xChar As String Dim xOutValue As String Set xDic = CreateObject("Scripting.Dictionary") xValue = pWorkRng.Value For i = 1 To VBA.Len(xValue) xChar = VBA.Mid(xValue, i, 1) If xDic.Exists(xChar) Then Else xDic(xChar) = "" xOutValue = xOutValue & xChar End If Next RemoveDupes1 = xOutValue End Function |
3. 그런 다음이 코드를 저장하고 닫은 다음 워크 시트로 돌아가이 수식을 입력합니다. = removedupes1 (A2) (A2 중복을 제거하려는 데이터 셀입니다) 데이터 외에 빈 셀에 넣습니다 (스크린 샷 참조).
4. 그런 다음 채우기 핸들을이 수식을 적용 할 범위 셀로 드래그하면 모든 중복 문자가 각 셀에서 즉시 제거됩니다.
사용자 정의 함수를 사용하여 구두점으로 구분 된 중복 단어 제거
셀에 특정 문장 부호로 구분 된 단어가있는 경우 원하는대로 중복 단어를 제거 할 수도 있습니다. 다음 단계를 따르십시오.
1. 누르고있어. ALT + F11 키를 눌러 Microsoft Visual Basic for Applications 창.
2. 딸깍 하는 소리 끼워 넣다 > 모듈을 클릭하고 다음 코드를 모듈 창.
VBA 코드 : 셀 구두점으로 구분 된 중복 단어 제거
Function RemoveDupes2(txt As String, Optional delim As String = " ") As String
Dim x
'Updateby Extendoffice
With CreateObject("Scripting.Dictionary")
.CompareMode = vbTextCompare
For Each x In Split(txt, delim)
If Trim(x) <> "" And Not .exists(Trim(x)) Then .Add Trim(x), Nothing
Next
If .Count > 0 Then RemoveDupes2 = Join(.keys, delim)
End With
End Function
Function RemoveDupes2(txt As String, Optional delim As String = " ") As String Dim x 'Updateby Extendoffice With CreateObject("Scripting.Dictionary") .CompareMode = vbTextCompare For Each x In Split(txt, delim) If Trim(x) <> "" And Not .exists(Trim(x)) Then .Add Trim(x), Nothing Next If .Count > 0 Then RemoveDupes2 = Join(.keys, delim) End With End Function |
3. 그런 다음이 코드를 저장하고 닫고 워크 시트로 돌아간 다음이 공식을 입력합니다. = RemoveDupes2 (A2, ",") 데이터 옆에있는 빈 셀에 스크린 샷을 참조하십시오.
4. 그런 다음 수식을 필요한 셀에 복사하면 모든 중복 단어가 모든 셀에서 제거됩니다. 스크린 샷보기 :
주의 사항: 위의 공식에서 A2 사용할 셀을 나타내며 쉼표 (,)는 셀의 단어를 구분하는 구두점을 나타냅니다. 필요에 따라 다른 구두점으로 변경할 수 있습니다.
'컴퓨터 활용(한글, 오피스 등) > 기타' 카테고리의 다른 글
델파이 미들웨이 비교 (0) | 2022.10.24 |
---|---|
네트워크_ 개념_IP 뒤에 /24 등 의미 (0) | 2022.10.21 |
오라클_Error_ORA_12*** (0) | 2022.10.04 |
보안_MS Exchange Server에서 원격 코드 실행이 가능한 취약점 (0) | 2022.10.04 |
emacs_사용법_윈도우 관련 명령어 (0) | 2022.08.25 |