한 번에 여러 열에 대해 "-"다음에 셀 내용 분리


0
 -------------------------------------------- 
|  Visible |   Actual formula   |  I need    |
 --------------------------------------------
|    0     |   =500-500         |  500       |
|    0     |   =10000-10000     |  10000     |
|    0     |   =1500-1500       |  1500      |
|    0     |   =750-750         |  750       |
|          |                    |            |
 -------------------------------------------- 

MS Office Excel 2007의 데이터 탭에서 텍스트를 텍스트로 사용하여 분리 할 수 ​​있습니다. 하지만 한 번에 열에 텍스트를 선택하고 적용 할 수없는 많은 열이 있습니다. 다른 모든 쉬운 방법으로 가능합니까?

답변:


0

그래서이 방법을 한 번에 여러 컬럼에 적용하고 싶습니다.
나는 이것이 VBA없이 어떻게 될 수 있는지 보지 못한다. 그래서 나의 해결책이 여기에있다.

Sub text2columns()

separator = "-"
FirstCol = ActiveSheet.Cells.Find("*", [A1], , , xlByColumns, xlNext).Column
LastCol = ActiveSheet.Cells.Find("*", [A1], , , xlByColumns, xlPrevious).Column

For i = LastCol To FirstCol Step -1

    Set test = ActiveSheet.Columns(i).Find(separator, , xlFormulas, xlPart)

    If Not test Is Nothing Then
        Set FirstCell = ActiveSheet.Columns(i).Find("*", , , , , xlNext)
        Set LastCell = ActiveSheet.Columns(i).Find("*", , , , , xlPrevious)

        Columns(i + 1).Insert Shift:=xlToRight
        Application.DisplayAlerts = False
        Range(FirstCell, LastCell).TextToColumns Destination:=FirstCell, _
            DataType:=xlDelimited, Other:=True, OtherChar:=separator
        Application.DisplayAlerts = True
    End If

Next
End Sub

빠른 개요

  1. 각 열을 거꾸로 반복
  2. 분리 자 문자열 검사 - 현재 열에 있음
  3. 예인 경우 옆에 새 열을 삽입하십시오.
  4. 현재 열에 텍스트 - 열 방법 적용

셀에 둘 이상의 구분 기호가있는 경우이 매크로는 실패합니다.

전에

enter image description here

후

enter image description here

샘플 워크 시트


죄송합니다. 오랫동안 답을 확인하지 못했습니다.
— Rono Charlson
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.