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


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.