쉼표로 구분 된 목록을 Excel에서 두 개의 열로 어떻게 분리합니까?


14

Excel에서 다음과 같이 길고 쉼표로 구분 된 목록이 있습니다.

401.50,0.027  
402.00,0.028  
402.50,0.029  
403.00,0.031  
403.50,0.032  
404.00,0.034  
404.50,0.037  

이것을 두 개의 별도 열로 변환하는 간단한 방법이 있습니까? 800 개가 넘는 값이 있으며 모든 값을 개별적으로 분리하기를 기대하지 않습니다.

답변:


30

텍스트를 열로 사용해 보셨습니까 ?

  1. 목록이 포함 된 열을 강조 표시하십시오.
  2. 이동 데이터 > 텍스트 나누기 .
  3. 구분을 선택하십시오 . 다음을 클릭하십시오 .
  4. 쉼표를 선택하십시오 . 다음을 클릭하십시오 .
  5. 일반 또는 텍스트 중 원하는 것을 선택하십시오 .
  6. 대상 을 그대로 두거나 다른 열을 선택하십시오. Finish를 클릭하십시오 .

두 개의 별도 열에 두 개의 수식을 사용할 수도 있습니다.

쉼표 왼쪽에 값을 가져 오려면 :

=0+LEFT(K1,FIND(",",K1)-1)

쉼표 오른쪽에 값을 가져 오려면 :

=0+RIGHT(K1,LEN(K1)-FIND(",",K1))

여기서 K1초기 문자열을 포함합니다 (예 :401.50,0.027

** 0+공식이 추출 된 부분 문자열을 숫자 데이터로 변환하기 전.


그런 다음 열을 행으로 변환하기 위해 열을 선택한 다음 붙여 넣기를 선택하고 조옮김을 선택할 수 있습니다.
라이브 사랑

Google 스프레드 시트
DanielBlazquez

3

텍스트를 텍스트 편집기로 복사 / 붙여 넣기 모든 공백 문자를 캐리지 리턴 / 줄 바꿈으로 바꿉니다. TXT 파일로 저장합니다. Excel에서 파일을 엽니 다.


0

목록을 처리하기 위해 작은 VBA를 작성하십시오

값 목록이 단일 셀에 있고 선택된 것으로 가정합니다. 다음 셀에 결과를 넣습니다.

Sub zx()
    Dim a() As String
    Dim v As Variant
    Dim i As Long
    Dim j As Long

    a = Split(ActiveCell.Value, " ")
    ReDim v(1 To UBound(a) + 1, 1 To 2)
    For i = 1 To UBound(a) + 1
        j = InStr(a(i - 1), ",")
        v(i, 1) = Val(Left(a(i - 1), j - 1))
        v(i, 2) = Val(Mid(a(i - 1), j + 1))
    Next

    ActiveCell.Offset(1, 0).Resize(UBound(a) + 1, 2) = v
End Sub
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.