엑셀문서에서 뭔가 조합해서 뽑아내기 위해서 만들었던 건데..
그냥 주석만 몇개 달고 그냥 올려 버리는거임... 정리해서 필요한거 몇줄만 올려야 되는데..
귀차나 귀차나 ~ 캬아 캬아
간만에 포스팅질 ~ :D 3개월만인가 ;;
objDialog.Filter = "테이블 정의서|*.xls|All Files|*.*"
objDialog.FilterIndex = 1
objDialog.InitialDir = "C:\"
intResult = objDialog.ShowOpen
If intResult = 0 Then
Wscript.Quit
Else
targetFile = objDialog.FileName
End If
Set objExcel = CreateObject("Excel.Application")
'objExcel.Visible = TRUE ' 엑셀 파일 띄우기
Set objWorkbook = objExcel.Workbooks.Open(targetFile)
'쓰기용도로 파일객체 하나 생성
Const ForWriting = 2
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("C:\이거슨주석용컬럼.txt",ForWriting,true)
'vbCrlf 는 줄 바꿈인거져 ~
Wscript.Echo "## INFO ## " & vbCrlf & "C:\이거슨주석용컬럼.txt 이 생성되요."
'시작 쉬트번호를 지정했어
sheetNum = 4
Set objWorksheet = objWorkbook.Worksheets(sheetNum)
intRow = 5
colCnt = 0
tempStr = ""
'쉬트갯수를 미리 알아내서 쉬트 갯수만큼 뺑뺑이 돌릴때 쓸꺼야
WSCnt = objWorkbook.Worksheets.Count
'워크시트 마지막까지 뺑뺑이
Do Until WSCnt = 3
'Wscript.Echo "[[테이블명 - " & objWorksheet.Name & "]]"
Do Until objWorksheet.Cells(intRow,5).Value = ""
If colCnt > 3 Then
tempStr = tempStr & vbCrlf
tempStr = tempStr & " * "
colCnt = 0
End If
tempStr = tempStr & objWorksheet.Cells(intRow, 3).Value & "(" & objWorksheet.Cells(intRow, 2) & "), "
intRow = intRow + 1
colCnt = colCnt + 1
Loop
objFile.WriteLine "[[워크시트명 - " & objWorksheet.Name & "]]"
objFile.WriteLine Left(tempStr,Len(tempStr) - 2)
objFile.WriteLine ""
'Wscript.Echo Left(tempStr,Len(tempStr) - 2) ' 마지막 콤마 제거하고 보여주기
'Wscript.Echo ""
tempStr = ""
intRow = 5
colCnt = 0
WSCnt = WSCnt - 1
'이부분이 정상작동하는지는 의문이랄까나..
If WSCnt > 3 Then
sheetNum = sheetNum + 1
Set objWorksheet = objWorkbook.Worksheets(sheetNum)
End If
Loop
Wscript.Echo "작업 완료 !!"
'엑셀을 닫아주자. 안 닫아주면 좀비 프로세스로 남아있는다 ㅋㅋ
objWorkbook.Close
objExcel.Quit
댓글