반응형

"Thema.문서보안 Excel-file, Java POI로 작업하기" 

    1. 암호화된 Excel-file을 Excel-VBA를 이용하여 Text-file로 생성한다.( Delimeter 이용 )

    2. Java로 Text-file을 읽는다.

        - Excel의 Cell내용중 '줄 바꿈'문자가 있을 경우, 라인 병합하기

    3. Apache POI Library를 이용하여 결과를 Excel-file로 출력한다.( 신규 Excel-file 생성 )

위의 사례처럼...

엑셀파일의 내용을 ASCII형태의 파일로 생성할 필요가 있습니다.

Excel-VBA를 이용하여 처리하는 방법입니다.

 

▶ Excel-file 원본 내용

Excel-file의 내용

 Excel-VBA로 변환

Sub Xls2Txt()

    '속도 개선을 위하 화면OPEN 비활성화'
    Application.ScreenUpdating = False

    Dim iSheet As Integer
    iSheet = 1
    
    'Read to Excel'
    Workbooks.Open ("C:\Test.xlsx")
    
    Set wbReadFile = Workbooks
    Set ws = wbReadFile(strInFile).Sheets(1)  '파일의 첫번째 Sheet'
    
    'Save to Text'
    iRowCnt = ws.Cells(Rows.Count, 1).End(xlUp).Row            '전체 행수'
    iColCnt = ws.Cells(1, Columns.Count).End(xlToLeft).Column  '전체 열수'
    
    Open "C:\Test.dat" For Output As #1
    
    For iRow = 1 To iRowCnt
    
        strCol = ""  'Row데이터 초기화'
        
        For iCol = 1 To iColCnt
            
            If iCol <> 1 Then strCol = strCol & " ^ "  'Delimeter 적용'
            
            strCol = strCol & ws.Cells(iRow, iCol)
        Next
        
        Print #1, strCol
    Next
    
    Close #1
    
    Application.Workbooks("Test.xlsx").Close  'OPEN한 문서 닫기'
    
    '화면OPEN 활성화'
    Application.ScreenUpdating = True
    
End Sub

 

 변환된 Text-file 내용( Delimeter : "^" )

Excel-VBA를 이용하여 변환된 ASCII파일 내용

해당 작업으 활용도는 '상단'의 "Thema.문서보안 Excel-file, Java POI로 작업하기"를 참고하시면 좋을 것 같습니다.

( 본 문서는 위의 Thema를 진행하며 작성된 문서 입니다. )

 

끝.

반응형