나눔터  
  HOME > 나눔터 > 묻고답하기 > 엑셀
엑셀
엑셀에 대한 질문과 답변을 올려주세요. 단, 취지에 맞지 않는 글은 운영자가 삭제합니다.
 "000 님, 도와주세요", "부탁 드립니다.", "급합니다!" 등과 같이 막연한 제목을 달지 말아주세요.
[필독] 빠르고 정확한 답변을 얻는 16가지 Tip !
[필독] 저작권법 개정에 따른 이용안내

작성자:  

 like (like)

추천:  2
파일:     asd.xlsm (312.9KB) 조회:  3782
제목:   VBA로 텍스트 나누기 하고있는데.. 너무 어렵습니다.
     
  글 설명이 어려워서 수정합니다 ^^;;


단추2를 누르면 ","로 텍스트를 나누게됩니다.
이 과정에서 A열의 텍스트만 나누어지는데 
B열의 데이터를 덮어서 날려버리네요.. 
B열의 데이터도 같이 텍스트가 나누어지게 하고싶습니다.
=========================

1. [단추1]을 눌러서 txt file을 오픈하면 현재 저장된 화면이 나옵니다.

2. 파일의 [단추2]를 누르면 텍스트 나누기가되는데요..

3. A열에있는 내용만 나누기가 됩니다..

4. B열과 C열의 내용도 ","가 있을경우 같이 나누고 싶은데요..

정답좀 ㅠㅠ

* 엑셀을 열고 txt file을 불러들여서 마법사로 나누면 Sheet2처럼 이쁘게 구분이 됩니다..
===============================

텍스트나누기 VBA

Option Explicit
Sub unConCat()

   Dim rngC As Range, rngAll As Range       'A열 각셀 및 전체셀을 넣을 영역 변수
   Dim varTemp() As String                    '전체영역을 넣기위한 variant형 string 변수
   Dim deLimiter As String                        '문자 구분자를 넣기 위한 변수
 
   Application.ScreenUpdating = False          '화면 업데이트 일시 정지
   Set rngAll = Columns(1).SpecialCells(2)    '전체 데이터 영역
   
   deLimiter = ","                                    '문자 구분자
   For Each rngC In rngAll                         '전체영역의 각셀을 순환
        varTemp = Split(rngC, deLimiter)         '선택한 셀을 쪼개서 배열에 넣음
        rngC.Offset(, 0).Resize(1, UBound(varTemp)) = varTemp
   Next                                               '각 셀(rngC)의 오른쪽 두번째 셀에 배열을 뿌려줌
    
   Columns("A:CW").AutoFit    'C:G 열너비 자동
   Set rngAll = Nothing      '개체변수 초기화
   
    
End Sub
 
[불량 게시물 신고]  
dew단추1(ImportTextFile)에 연결된어 있는 VBA에서
   .TextFileCommaDelimiter = True
추가하시면 될거 같은데요...

안되시면 샘플 텍스트 파일도 같이 올리시면 확인할수 있을 것같습니다.
09-14 (11:03)
삭제 ■신고
like앗 감사합니다. 해결했습니다!! 천재 천재!09-14 (11:46)
삭제 ■신고
like이렇게 간단하게 한줄추가로 해결할수있다니 너무 신기합니다 ㅠㅠ09-14 (11:50)
삭제 ■신고
dew열공하세요..09-14 (11:51)
삭제 ■신고
        
  

작성일 : 2018-09-14(08:15)
최종수정일 : 2018-09-14(09:45)