101
訪客
|
各位先進:
我手邊有百來個WORD檔,每一個檔裡面又有許多字是輸入在〝文字方塊〞裡面。今天要把這一百多個檔案都改成【內文】格式。
請問•••文字方塊裡面的文字,可以透過巨集或是程式把該些字抓離文字方塊嗎?或是將文字方塊的〝方塊〞變不見,而〝文字〞留下來。
要不然就得一個一個的用手動的方式做了。
不論結果如何,先謝謝各位了:﹞
|
|
|
|
|
已記錄
|
|
|
|
leonchou
版主
離線
文章: 1160
|
文字抓出來以後呢?
要放在哪裡? 什麼位置??
|
|
|
|
|
已記錄
|
|
|
|
101
訪客
|
補充一個樣本檔,其中紅色字與框線為〝修改前〞的樣式,藍色字為〝修改後〞。【顏色只是區別修改前後,實際上整篇的字均為黑色】
[附件已被管理員刪除]
|
|
|
|
|
已記錄
|
|
|
|
leonchou
版主
離線
文章: 1160
|
處理單一檔案 Sub xx() For Each s In ActiveDocument.Shapes If s.TextFrame.HasText Then s.TextFrame.TextRange.Copy s.Anchor.Cells(1).Range.Paste End If Next End Sub 批次處理多檔:Dir + Loop,請參考 這個主題 。
|
|
|
|
|
已記錄
|
|
|
|
101
訪客
|
謝謝版主的解答,我先來做做看。﹝不是版主的問題,而是我對程式、巨集一知半解。﹞
|
|
|
|
|
已記錄
|
|
|
|
101
訪客
|
單一檔案已經成功了!!謝謝
〝批次處理〞在來試試看。
|
|
|
|
|
已記錄
|
|
|
|
|
arti
|
上面的附加檔案來測試是沒問題, 但是如果隨便開一個新檔直接插入一個文字方塊來執行此巨集, s.Anchor.Cells(1).Range.Paste 這行會出現錯誤,版大此巨集只能抓取在表格中文字方塊, 萬一是非表格的就無法,請問該怎樣修改? 查了word說明Anchor這個字應該是文字方塊、圖文框的意思吧, 還是有看沒有懂得要怎修。
|
|
|
|
|
已記錄
|
|
|
|
|
arti
|
想回去修改文章才發現沒編輯功能, 不知是小學生權限不足還是此功能未開啟, 所以只好再發一篇。 剛剛想到一個方法,就是先把文章轉成表格, 如此就可以執行版大的巨集,經過測試沒問題, 等執行完畢再從表格轉回文字即可, 雖然是麻煩點,但是我不懂的修改巨集也只能走其他法。
|
|
|
|
|
已記錄
|
|
|
|
leonchou
版主
離線
文章: 1160
|
上面的附加檔案來測試是沒問題, 但是如果隨便開一個新檔直接插入一個文字方塊來執行此巨集, s.Anchor.Cells(1).Range.Paste 這行會出現錯誤,版大此巨集只能抓取在表格中文字方塊, 萬一是非表格的就無法,請問該怎樣修改? 查了word說明Anchor這個字應該是文字方塊、圖文框的意思吧, 還是有看沒有懂得要怎修。
我一開始就問樓主,文字方塊內容抓出來要放哪裡。 要放在什麼位置是看各人的情況和需求而定, 需求者沒說,回答者如何事先得知? 所以如果你想要一個各種情形都通用的程式寫法, 我只能說那是不切實際的 -- VBA本來就是為了滿足個人特殊需求,量身打造的一種方式。 如果要談到如何寫成一個通用的工具... 那又扯太遠了。
|
|
|
|
|
已記錄
|
|
|
|
|
arti
|
當然解題者不可能有預知、未卜先知的能力, 所以我也在第一行就說明 用上面的附加檔測試沒有問題,我會提出問題,是因為我也有此問題, 以前我只能一個個剪貼,還好文字方塊不算太多。 我一開始並沒有權限可以下載附件, 只好自己弄一個來測試, 也才無意中發現問題,所以也才提出詢問, 並不是要責怪版主大人, 廢話太多恐怕又會被....... 
|
|
|
|
|
已記錄
|
|
|
|
|