텍스트 자르기
외부에서 하나의 텍스트 파일로 제공된 파일을 정해진 크기에 맞춰 자르는 매크로 소스입니다.
파일이 없으면 확인하기도 어렵겠지만 처리하는 방식을 참조하시기 바랍니다.
첫번 째 시트에 텍스트 파일을 옮겨놓습니다. 텍스트파일은 sam파일이나 cdr 데이터 등 일겁니다.
두번째 시트에 작업을합니다.
시작은 두번째 시트에서 시작합니다.
Sub chopText()
Cells(4, 3).Select
ActiveCell.FormulaR1C1 = "=COUNTA(R[3]C:R[300]C)"
colCnt = Cells(4, 3)
'테이블 정의 읽어오기
Range(Cells(6, 3), Cells(colCnt + 6, 3)).Select
Selection.Copy
Cells(3, 12).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
Range(Cells(6, 6), Cells(colCnt + 6, 8)).Select
Selection.Copy
Cells(4, 12).Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
'컨텐츠 복사해 오기
Sheets("데이터").Select
Range(Cells(1, 1), Cells(100000, 10)).Select
Selection.Copy
Sheets("수행").Select
Cells(7, 13).Select
ActiveSheet.Paste
Cells(2, 12).Select
ActiveCell.FormulaR1C1 = "=COUNTA(R[5]C:R[100000]C)"
txtCnt = Cells(2, 12)
'7번에 있는 레코드는 헤더
t = 8
Do While t < txtCnt + 6
chopTxt = Cells(t, 12)
i = 13
Do While i < colCnt + 14
chopLen = Cells(5, i)
Cells(t, i + 1).Select
Selection.NumberFormatLocal = "@"
Cells(t, i + 1) = Mid(Cells(t, i), chopLen + 1)
Cells(t, i).Select
Selection.NumberFormatLocal = "@"
Cells(t, i) = Mid(Cells(t, i), 1, chopLen)
i = i + 1
Loop
t = t + 1
Loop
Cells(6, 12).Select
End Sub
Sub clearPage()
Range(Cells(7, 1), Cells(300, 10)).Clear
Range(Cells(1, 11), Cells(1000, 400)).Clear
End Sub
'MACRO > EXCEL-MACRO' 카테고리의 다른 글
파일 리스트 조회하기 (0) | 2013.12.23 |
---|---|
엑셀에서 하이퍼링크 걸기 (0) | 2013.11.08 |
autofilter 확인하기 (0) | 2013.10.31 |
매크로 위 아래 줄 비교 하기 (0) | 2013.06.17 |
함수 2. count 함수 사용 (0) | 2013.06.13 |