본문 바로가기
카테고리 없음

Excel VBA를 활용한 문자열 데이터 정제 및 최적화

by 퍼포먼스마케팅코더 2024. 1. 11.
반응형

Excel VBA를 활용한 문자열 데이터 정제 및 최적화

  1. 문자열 처리 시 주의점: Excel에서 문자열을 합칠 때 "~", "*", "?"와 같은 문자들은 와일드카드로 사용되므로, SUMIF 함수 등에서 문제를 일으킬 수 있습니다.
  2. 줄바꿈 데이터 처리: Alt + Enter로 생성된 줄바꿈은 CLEAN 함수를 통해 제거할 수 있습니다.
  3. 빈칸 데이터 정리: 알 수 없는 빈칸 데이터는 TRIM 함수를 이용해 제거할 수 있습니다.
  4. 최종 결과: 위의 과정을 거치고 나면, 올바른 숫자가 집계되는 것을 확인할 수 있습니다.

VBA 코드 예시

아래는 Excel VBA를 이용하여 위의 과정을 자동화하는 코드 예시입니다. 이 코드는 특정 셀 범위에 대해 와일드카드 문자를 처리하고, 줄바꿈 및 빈칸을 제거한 후, 최종적으로 데이터를 정제합니다.

Sub CleanAndAggregateData()
    Dim rng As Range
    Dim cell As Range
    Set rng = ThisWorkbook.Sheets("Sheet1").Range("A1:A10") ' 수정 필요: 적절한 범위 지정

    ' 문자열 정제
    For Each cell In rng
        cell.Value = Replace(cell.Value, "~", "")
        cell.Value = Replace(cell.Value, "*", "")
        cell.Value = Replace(cell.Value, "?", "")
        cell.Value = Application.WorksheetFunction.Clean(cell.Value)
        cell.Value = Application.WorksheetFunction.Trim(cell.Value)
    Next cell

    ' 데이터 집계 또는 추가 처리
    ' 예: Range("B1").Value = Application.WorksheetFunction.Sum(rng)
End Sub

 

이 코드는 Excel VBA를 사용하여 문자열에서 와일드카드 문자를 제거하고, CLEANTRIM 함수를 사용하여 데이터를 정제합니다. 또한, 이 코드는 사용자가 필요에 따라 수정할 수 있도록 범위 및 추가 처리 부분을 유연하게 설정할 수 있도록 설계되었습니다.

반응형

댓글