kerwin_c
2004-02-10, 03:50 AM
想要將一有大量頁數的word檔
當中的幾頁獨立出來存成另一
個檔,請問該怎麼做呢??
感謝回應!
贊助商連結
當中的幾頁獨立出來存成另一
個檔,請問該怎麼做呢??
感謝回應!
贊助商連結
贊助商連結 kerwin_c 2004-02-10, 03:50 AM 想要將一有大量頁數的word檔 當中的幾頁獨立出來存成另一 個檔,請問該怎麼做呢?? 感謝回應! 贊助商連結 Lucky Purple 2004-02-10, 06:02 PM mark => copy => open new document => paste => save kerwin_c 2004-02-15, 10:37 PM 我知道此法可行,不過要處理很多檔案而且檔案的頁數很多的時候, 這樣的操作就變得很繁瑣,請問是否有較有效率的方法嗎? leonchou 2004-02-17, 02:20 AM 寫個巨集試試 Sub 另存指定頁() inputpages = InputBox("輸入要另存的頁碼, 以逗號分隔") If inputpages = "" Then Exit Sub newDocname = "D:\temp\Doc1.doc" Selection.HomeKey Unit:=wdStory Set myRange = Selection.Range Set myDoc = ActiveDocument Documents.Add pages = Split(inputpages, ",") '將輸入頁碼轉為陣列 For Each page In pages Set myRange = myRange.GoTo(What:=wdGoToPage, _ Which:=wdGoToAbsolute, Count:=page) pagestart = myRange.Start Set myRange = myRange.GoToNext(What:=wdGoToPage) pageend = myRange.Previous.Start If myRange.Start = pagestart Then _ pageend = myDoc.Content.End myDoc.Range(pagestart, pageend).Copy Selection.Paste Next ActiveDocument.SaveAs newDocname End Sub Word2000 測試ok. ivantw 2004-02-18, 08:26 PM Leon Chou 兄真是 Office 之神! :D 不過建議改一下紅色字部分,否則可能會產生路徑錯誤。 最初由 Leon Chou 發表 寫個巨集試試 Sub 另存指定頁() inputpages = InputBox("輸入要另存的頁碼, 以逗號分隔") If inputpages = "" Then Exit Sub newDocname = "C:\Temp1.doc" Selection.HomeKey Unit:=wdStory Set myRange = Selection.Range Set myDoc = ActiveDocument Documents.Add pages = Split(inputpages, ",") '將輸入頁碼轉為陣列 For Each page In pages Set myRange = myRange.GoTo(What:=wdGoToPage, _ Which:=wdGoToAbsolute, Count:=page) pagestart = myRange.Start Set myRange = myRange.GoToNext(What:=wdGoToPage) pageend = myRange.Previous.Start If myRange.Start = pagestart Then _ pageend = myDoc.Content.End myDoc.Range(pagestart, pageend).Copy Selection.Paste Next ActiveDocument.SaveAs newDocname Kill "C:\Temp1.doc" ' 刪除暫存檔 End Sub Word2000 測試ok. leonchou 2004-02-19, 01:51 AM 太抬舉我了~~ (汗) 不過這兩句倒是令我搞混了: ActiveDocument.SaveAs newDocname Kill "C:\Temp1.doc" ' 刪除暫存檔 為什麼是先存再殺,而不是先殺再存呢? 而且,SaveAS應該會覆蓋不是嗎? 請教了。 ivantw 2004-02-19, 01:53 AM 最初由 Leon Chou 發表 太抬舉我了~~ (汗) 不過這兩句倒是令我搞混了: ActiveDocument.SaveAs newDocname Kill "C:\Temp1.doc" ' 刪除暫存檔 為什麼是先存再殺,而不是先殺再存呢? 而且,SaveAS應該會覆蓋不是嗎? 請教了。 挖哈哈,真抱歉,搞笑話了,我看錯啦.. :( scceddy 2004-02-20, 05:51 PM 最初由 Ivan Lin 發表 挖哈哈,真抱歉,搞笑話了,我看錯啦.. :( 呵呵 一復出就鬧笑話~:D 不過沒什麼變嘛 您還是一樣常常'看錯'呢~:D kerwin_c 2004-02-25, 11:03 AM Leon Chou大大真神... |
|