2011. 6. 18. 14:24
Word 파일 분할  office sw 

2009/08/06 10:19

복사http://blog.naver.com/nearfree/110066403790

출처 : http://www.officetutor.co.kr/board/pop_print.asp?f_tn=Dtip_all&f_bno=260&f_categb=P01

 

안녕하세요!

최근의 휴대폰에는 파일뷰어 기능이 포함되어 있습니다.

파일뷰어는 텍스트, 워드 등 오피스문서, pdf, jpg 등 이미지 파일을 읽을 수 있습니다만 ebook으로 활용하고자 할 때 가장 불편한 점이 2가지입니다. 
1. 문서를 읽을 때 확대, 축소, 이동을 되풀이해 봐야한다. 
2. 북마크 기능이 없고, 용량이 큰 경우(대체로 500k 이상)메모리 에러가 난다. 

이상의 단점을 해결하기 위해 텍스트 파일을 워드(Doc)문서로 변환하고, 페이지 및 폰트 크기 설정을 하고 파일을 분할하여 보는 방법이 일반적인데 그 과정이 번거롭고 시간을 필요로 합니다. 

제가 말씀드리는 방법은 간단히 말해 한번만 워드 매크로를 등록해 두면 다음부터는 

워드에 텍스트 문서 붙여 넣기-->매크로 실행-->끝 

이런 간단한 절차로 ebook을 분할 제작할 수 있습니다.



<<파일뷰어로 보는 ebook 만들기: Text--> Doc 변환 및 분할 방법>>

1. Text 파일 정리

     1) @BookMate 0.91 Beta로 텍스트파일을 불러와서 정리합니다.

     2) 파일열기-->옵션체크-->문서정리 시작-->정리된 문서 전체선택 복사
         다운로드 및 사용방법(제작자 홈페이지): http://blog.naver.com/ebookmate.do

2. Doc 변환 및 분할

     3) 매크로 제작(최초 한번만): 아래에 상세 설명

     4) 첨부된 Split.doc 문서를 열고 2)에서 복사한 내용을 붙여넣기-->다른 이름으로 저장
         - Split.doc는 저의 취향에 맞게 최적화된 문서양식(2.12"액정, 240x320화면, 폰트사이즈 50)입니다. 각자 취향에 맞게 파일-->페이지설정, 폰트사이즈 설정해 주시면 됩니다.

     5) MS Word 전체가 닫혔을 경우에는 MS Word 실행-->다른 이름으로 저장된 파일 열기
         - 탐색기 등에서 저장된 문서를 바로 열면 매크로가 분할 저장될 경로를 찾지 못합니다-->한번 다른이름으로저장(실제로는 같은 이름으로 저장)해준 후 매크로를 실행하시면 됩니다.


     6) Alt F8(또는 도구-->매크로-->매크로)-->실행--> Number of Batches? 팝업박스에 분할될 문서 수량(300페이지를 50페이지씩 분할시 6) 입력

     7) 다른 이름으로 저장된 문서가 있는 폴더에 01_xxx.doc 등 확인-->끝

        (다음 문서에 이전 문서의 마지막 몇 줄이 중복되는 경우가 있습니다.)

* 매크로 제작 방법

아래 코드로 매크로를 제작하면 됩니다.

매크로에 익숙하지 않은 분들을 위해 상세히 설명하면

1.Split.doc(또는 아무문서나)열기-->Alt F8(도구-->매크로-->매크로)-->매크로 이름에 doc_splitter 입력-->만들기

2.
------------------------------------------------------
Sub doc_splitter()
'
' doc_splitter Macro
' xxx이(가) 만든 매크로 2006-11-25
'

End Sub
-------------------------------------------------------

위 코드를 아래 코드로 바꾼다-->닫기-->끝

------------------------------------------------------
Sub doc_splitter()
' Copyright by W. Polmann
' Use at your own risk
' modified by mo_on 2006.11.25(01_xx.doc,02_xx.doc,...)

origdoc = ActiveDocument.Name

Dim Mldg, Titel, Voreinstellung, Batches
Mldg = "Number of batches?"
Titel = "Freeware by www.ecm-e.de, W. Polmann."
Voreinstellung = "1" ' Voreinstellung festlegen.
' Meldung, Titel und Standardwert anzeigen.
Batches = InputBox(Mldg, Titel, Voreinstellung)

Prozentsprung = 100 / Batches

For x = 1 To Batches

    If x < 10 Then
        ActiveDocument.SaveAs FileName:="0" & x & "_" & origdoc, _
        FileFormat:=wdFormatDocument, LockComments:=False, Password:="", _
        AddToRecentFiles:=True, WritePassword:="", ReadOnlyRecommended:=False, _
        EmbedTrueTypeFonts:=False, SaveNativePictureFormat:=False, SaveFormsData _
        :=False, SaveAsAOCELetter:=False
    Else
        ActiveDocument.SaveAs FileName:=x & "_" & origdoc, _
        FileFormat:=wdFormatDocument, LockComments:=False, Password:="", _
        AddToRecentFiles:=True, WritePassword:="", ReadOnlyRecommended:=False, _
        EmbedTrueTypeFonts:=False, SaveNativePictureFormat:=False, SaveFormsData _
        :=False, SaveAsAOCELetter:=False
    End If

EndeProzentsprung = Prozentsprung * x
AnfangProzentsprung = EndeProzentsprung - Prozentsprung


Selection.GoTo What:=wdGoToPercent, Which:=wdGoToNext, Count:=AnfangProzentsprung, Name:=""
Anfang = Selection.Start

Selection.GoTo What:=wdGoToPercent, Which:=wdGoToNext, Count:=EndeProzentsprung, Name:=""
' Bis zur nachsten Absatzmarke hoch


Selection.Find.ClearFormatting
With Selection.Find
.Text = "^p"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindAsk
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute
Selection.MoveRight Unit:=wdCharacter, Count:=1
Ende = Selection.End


Set Range = ActiveDocument.Range(Anfang, Ende)


Range.Select
Selection.Copy


Selection.WholeStory
Selection.Delete Unit:=wdCharacter, Count:=1
Selection.Paste
ActiveDocument.Save
ActiveDocument.Close

Documents.Open FileName:=origdoc, _
ConfirmConversions:=False, ReadOnly:=False, AddToRecentFiles:=False, _
PasswordDocument:="", PasswordTemplate:="", Revert:=False, _
WritePasswordDocument:="", WritePasswordTemplate:="", Format:= _
wdOpenFormatAuto

Next x

ActiveDocument.Close

End Sub
----------------------------------------------------------

* 코드 간단 설명

상기 코드의 출처는 http://www.proz.com/topic/35310 ;입니다.
분할저장되는 문서명을 Teil_1_xxx.doc 에서 01_xxx.doc 이 되도록 일부 코드 수정하였습니다.

ps>
그동안 임대폰만 쓰다가 스피커가 이승을 하직하려 하고 기판도 동참하였는지라 욱하고 v9050을 구입하게 되었습니다.

근데 파일뷰어로 보는 ebook을 제작하는 방법이 상당히 복잡하더군요. 워드 매크로는 잘 모르고 해서, 국내외 싸이트를 밤새 뒤져보다가 분할된 텍스트 문서를 워드문서로 일괄 변환하는 프로그램도 구했는데 그 방법도 복잡하고 번거롭더군요. 결국 위의 코드를 발견하게 되었습니다. - 전문자료검색은 역시 구글이 우수하네요.^^

아마 현재까지 나온 방법 중 가장 간편한 방법이 아닐까 합니다.

고수분들이 좀 더 편리한 코드로 수정해 주시기를 기대합니다.


이제 2006년도 34일이 채 못 남았군요.

회원님들 남은 시간 뜻 깊게 보내시길 바랍니다!^

[출처] Word 파일 분할|작성자 룰루랄라


Posted by 위키백