이 게시판은 아별닷컴 회원만 질문을 올릴 수 있습니다. 회원에게 주어지는 특권인셈이지요. 회원이 아닌 분들은 열람만 가능합니다.
계속 중문이 깨져서 나오네요.
인코딩을 utf-8로 바꿔도 보고, 언어 설정을 중문으로도 바꿔보기도 했는데요. 중문 깨짐 현상을 해결하지 못하고 있습니다.
도움 부탁드려요!!
감사합니다.
댓글 '5'
샘플파일 첨부드리니 잘 부탁드립니다~~~
감사합니다.
김수영님..
쌩으로 몇번 시도를 하다가.. 해결이 안되어..
잠시 구글링을 해봤습니다.
1. 엑셀 자체적으로 해결하는 방법은 없는듯 하군요..
좀 원시적이지만.. 일단 엑셀 파일에서 유니코드 텍스트(Unicode Text)로 저장하신 다음..
메뉴장(Notepad.exe)에서 저장한 텍스트 파일을 열고.. 탭을 복사한 다음 바꾸기로 탭을 콤마(,)로 바꾼 다음 csv로 저장하는 방법이 있겠습니다.
https://help.salesforce.com/apex/HTViewSolution?id=000003837&language=en_US
2. 추가기능을 설치해서 해결..
저도 설치해보진 않았지만.. 그런 작업을 해주는 추가기능이 있는 듯 합니다.
https://jaimonmathew.wordpress.com/
좀 더 연구해보겠습니다. +_+;;
엑셀 파일 내용을 CSV파일로 UTF-8로 인코딩해서 export하는 소스가 있습니다.
http://slway000.tistory.com/17
https://techspread.wordpress.com/2012/12/05/export-excel-to-csv-in-unicode-utf-8-using-macro-vba/
참고하시기 바랍니다.
Public Sub WriteCSV() If fileName = "False" Then On Error GoTo eh Dim BinaryStream For r = 1 To 10 BinaryStream.SaveToFile fileName, adSaveCreateOverWrite MsgBox "CSV generated successfully" eh: End Sub |
UTF-8로 읽고 쓰기
http://blog.naver.com/atmyhome/90154596931
[이하 위 링크에서 퍼온 코드 ]
Function TextStrimRead(strPathName As String) As String
Dim objStream As Object
Set objStream = CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = 2 'adTypeText
objStream.Charset = "UTF-8"
objStream.LoadFromFile strPathName
TextStrimRead = objStream.ReadText
Set objStream = Nothing
End Function
Sub TextStrimWrite(strPathName As String, strString As String)
Dim objStream As Object
Set objStream = CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = 2 'adTypeText
objStream.Charset = "UTF-8"
objStream.WriteText strString
objStream.SaveToFile strPathName, 2 'adSaveCreateOverWrite
Set objStream = Nothing
er:
End Sub
Sub test()
'경로는 자신의 경로로 수정하세요.
'UTF-8형식의 Sample1.txt 파일이 있어야 실행됩니다.
'텍스트 파일을 읽어오는 예시
Debug.Print TextStrimRead("C:\Documents and Settings\cjj_biz\바탕 화면\Sample1.txt")
'
'텍스트 파일에 쓰는 예시
TextStrimWrite "C:\Documents and Settings\cjj_biz\바탕 화면\Sample1.txt", "연습입니다."
End Sub
[출처] (엑셀vba)UTF-8형식의 텍스트파일 정상적으로 읽고 쓰기..|작성자 앳마
김수영님..
안녕하세요?
음.. 저도 한번도 시도해보지 않은 케이스의 문제인지라..
샘플이 필요할 것 같습니다.
한두줄의 라인만 있어도 되니.. 샘플 엑셀 파일을 첨부해주시기 바랍니다.
첨부해주시면 연구해서 해답을 구해보겠습니다.
감사합니다. ^^