Note: The other languages of the website are Google-translated. Back to English

 Excel에서 예외를 사용하여 텍스트 문자열을 적절한 대소 문자로 변환하는 방법은 무엇입니까?

Excel에서는 적절한 기능을 적용하여 텍스트 문자열을 적절한 대소 문자로 쉽게 변환 할 수 있지만, 다음 스크린 샷과 같이 텍스트 문자열을 적절한 대소 문자로 변환 할 때 특정 단어를 제외해야하는 경우도 있습니다. 이 기사에서는 Excel 에서이 작업을 해결하는 몇 가지 빠른 트릭에 대해 설명합니다.

수식을 사용하여 예외가있는 텍스트 문자열을 적절한 대소 문자로 변환

VBA 코드를 사용하여 예외가있는 텍스트 문자열을 적절한 대소 문자로 변환


수식을 사용하여 예외가있는 텍스트 문자열을 적절한 대소 문자로 변환

다음 공식이이 작업을 신속하게 처리하는 데 도움이 될 수 있습니다. 다음과 같이하십시오.

다음 공식을 입력하십시오.

= UPPER (LEFT (A2)) & MID (TRIM (SUBSTITUTE (SUBSTITUTE (SUBSTITUTE (SUBSTITUTE ( ""& PROPER (A2) & "", "Of", "of"), "A", "a"), "Is ","는 "),"Usa ","USA ")), 2, LEN (A2)) 결과를 얻으려는 셀에 넣은 다음 채우기 핸들을 끌어이 수식을 채우면 텍스트 문자열이 적절한 대소 문자로 변환되었지만 특정 예외는 스크린 샷을 참조하십시오.

주의 사항: 위의 공식에서 A2 변환하려는 셀입니다. "의", "A", "Is", "Usa" 변환 후의 일반적인 적절한 단어입니다. "of", "a", "is", "USA" 적절한 경우에서 제외하려는 단어입니다. 필요에 따라 변경하거나 SUBSTITUTE 기능을 사용하여 다른 단어를 추가 할 수 있습니다.


VBA 코드를 사용하여 예외가있는 텍스트 문자열을 적절한 대소 문자로 변환

위의 공식을 이해하기 어렵고 필요에 따라 변경하는 경우 여기에서 VBA 코드를 적용하여이 작업을 완료 할 수도 있습니다. 다음 단계를 하나씩 수행하십시오.

1. 누르고 ALT + F11 키를 눌러 응용 프로그램 용 Microsoft Visual Basic 창.

2. 딸깍 하는 소리 끼워 넣다 > 모듈을 클릭하고 다음 코드를 모듈 창.

VBA 코드 : 예외를 제외하고 텍스트 문자열을 적절한 대소 문자로 변환 :

Sub CellsValueChange()
'Updateby Extendoffice
    Dim xSRg As Range
    Dim xDRg As Range
    Dim xPRg As Range
    Dim xSRgArea As Range
    Dim xRgVal As String
    Dim xAddress As String
    Dim I As Long
    Dim K As Long
    Dim KK As Long
    On Error Resume Next
    xAddress = Application.ActiveWindow.RangeSelection.Address
    Set xSRg = Application.InputBox("Original cells:", "KuTools For Excel", xAddress, , , , , 8)
    If xSRg Is Nothing Then Exit Sub
    Set xDRg = Application.InputBox("Output cells:", "KuTools For Excel", , , , , , 8)
    If xDRg Is Nothing Then Exit Sub
    Set xPRg = Application.InputBox("Cells to exclude:", "KuTools For Excel", , , , , , 8)
    If xPRg Is Nothing Then Exit Sub
    Set xDRg = xDRg(1)
    For I = 1 To xSRg.Areas.Count
        Set xSRgArea = xSRg.Areas.Item(I)
        For K = 1 To xSRgArea.Count
            xRgVal = xSRgArea(K).Value
            If Not IsNumeric(xRgVal) Then
                xRgVal = CorrectCase(xRgVal, xPRg)
                xDRg.Offset(KK).Value = xRgVal
            End If
            KK = KK + 1
        Next
    Next
End Sub
Function CorrectCase(ByVal xRgVal As String, ByVal xPRg As Range) As String
    Dim xArrWords As Variant
    Dim I As Integer
    Dim xPointer As Integer
    Dim xVal As String
    xPointer = 1
    xVal = xRgVal
    xArrWords = WordsOf(xRgVal)
    For I = 0 To UBound(xArrWords)
        xPointer = InStr(xPointer, " " & xVal, " " & xArrWords(I))
        Debug.Print xPointer
        Mid(xVal, xPointer) = CorrectCaseOneWord(CStr(xArrWords(I)), xPRg)
    Next I
    CorrectCase = xVal
End Function
Function WordsOf(xRgVal As String) As Variant
    Dim xDelimiters As Variant
    Dim xArrRtn As Variant
    xDelimiters = Array(",", ".", ";", ":", Chr(34), vbCr, vbLf)
    For Each xEachDelimiter In xDelimiters
        xRgVal = Application.WorksheetFunction.Substitute(xRgVal, xEachDelimiter, " ")
    Next xEachDelimiter
    xArrRtn = Split(Trim(xRgVal), " ")
    WordsOf = xArrRtn
End Function
Function CorrectCaseOneWord(xArrWord As String, xERg As Range) As String
    With xERg
        If IsError(Application.Match(xArrWord, .Cells, 0)) Then
            CorrectCaseOneWord = Application.Proper(xArrWord)
        Else
            CorrectCaseOneWord = Application.VLookup(xArrWord, .Cells, 1, 0)
        End If
    End With
End Function

3. 그런 다음 F5 키를 눌러이 코드를 실행하면 변환하려는 원래 셀을 선택하라는 메시지 상자가 나타납니다. 스크린 샷을 참조하십시오.

4. 그런 다음 OK, 팝업 상자에서 결과를 출력하려는 ​​셀을 선택합니다. 스크린 샷을 참조하십시오.

5. 클릭으로 이동 OK, 팝업 대화 상자에서 제외 할 텍스트를 선택합니다. 스크린 샷을 참조하십시오.

6. 그런 다음 OK 대화 상자를 종료하고 모든 텍스트 문자열이 적절한 대소 문자로 변환되었지만 지정된 단어를 제외하려면 스크린 샷을 참조하십시오.


최고의 사무 생산성 도구

Excel용 Kutools는 대부분의 문제를 해결하고 생산성을 80% 증가시킵니다.

  • 재사용: 빠르게 삽입 복잡한 공식, 차트 그리고 이전에 사용한 모든 것; 셀 암호화 암호로; 메일 링리스트 생성 이메일 보내기 ...
  • 슈퍼 포뮬러 바 (여러 줄의 텍스트와 수식을 쉽게 편집 할 수 있습니다.) 레이아웃 읽기 (많은 수의 셀을 쉽게 읽고 편집합니다.) 필터링 된 범위에 붙여 넣기...
  • 셀 / 행 / 열 병합 데이터 손실없이; 셀 내용 분할; 중복 행 / 열 결합... 중복 셀 방지; 범위 비교...
  • 중복 또는 고유 선택 행; 빈 행 선택 (모든 셀이 비어 있음); 슈퍼 찾기 및 퍼지 찾기 많은 통합 문서에서; 무작위 선택 ...
  • 정확한 사본 수식 참조를 변경하지 않고 여러 셀; 참조 자동 생성 여러 시트에; 글 머리 기호 삽입, 확인란 등 ...
  • 텍스트 추출, 텍스트 추가, 위치 별 제거, 공간 제거; 페이징 부분합을 만들고 인쇄합니다. 셀 내용과 주석 간 변환...
  • 슈퍼 필터 (다른 시트에 필터 구성표 저장 및 적용) 고급 정렬 월 / 주 / 일, 빈도 등 특수 필터 굵은 기울임 꼴로 ...
  • 통합 문서와 워크 시트 결합; 키 열을 기반으로 테이블 병합; 데이터를 여러 시트로 분할; xls, xlsx 및 PDF 일괄 변환...
  • 300개 이상의 강력한 기능. Office / Excel 2007-2021 및 365를 지원합니다. 모든 언어를 지원합니다. 기업 또는 조직에서 쉽게 배포할 수 있습니다. 전체 기능은 30일 무료 평가판입니다. 60일 환불 보장.
kte 탭 201905

Office Tab은 Office에 탭 인터페이스를 제공하여 작업을 훨씬 쉽게 만듭니다.

  • Word, Excel, PowerPoint에서 탭 편집 및 읽기 사용, Publisher, Access, Visio 및 Project.
  • 새 창이 아닌 동일한 창의 새 탭에서 여러 문서를 열고 만듭니다.
  • 생산성을 50% 높이고 매일 수백 번의 마우스 클릭을 줄입니다!
officetab 하단
코멘트 (1)
아직 평가가 없습니다. 가장 먼저 평가하세요!
이 댓글은 사이트의 중재자에 의해 최소화되었습니다
매크로만 예외 목록에서 전체 셀이 아닌 CAPS의 찌르는 부분을 제외했다면 이것은 놀라운 일입니다.
아직 코멘트가 없습니다
여러분의 의견을 남겨
게스트로 게시
×
이 게시물 평가 :
0   등장 인물
추천 위치

Follow Us

저작권 © 2009 - WWW.extendoffice.com. | 판권 소유. 에 의해 구동 ExtendOffice. | | 사이트 맵
Microsoft 및 Office 로고는 미국 및 / 또는 기타 국가에서 Microsoft Corporation의 상표 또는 등록 상표입니다.
Sectigo SSL로 보호