我要将Word文档的每一页另存为文本文件。我用下面的代码来做这件事:
Sub JedeSeiteEinNeuesDokumentOhneKopfUndFusszeilen()
Dim oDoc As Document, nDoc As Document, oRange As Range
Set oDoc = ActiveDocument
Max = oDoc.ComputeStatistics(wdStatisticPages)
For i = 1 To Max
oDoc.Activate
Selection.GoTo What:=wdGoToPage, Name:=i
Set oRange = Selection.Bookmarks("\Page").Range
If Right(oRange.Text, 1) = Chr(12) Then
oRange.SetRange Start:=oRange.Start, End:=oRange.End - 1
End If
Set nDoc = Documents.Add(Template:=ActiveDocument.AttachedTemplate.FullName)
nDoc.Content.FormattedText = oRange.FormattedText
s = nDoc.ComputeStatistics(wdStatisticPages)
'Wenn eine 2. Seite mit einem einzigen leeren Absatz entstanden ist
If s = 2 And nDoc.Paragraphs.Last.Range.Text = Chr(13) Then
nDoc.Paragraphs.Last.Range.Delete
End If
nDoc.SaveAs FileFormat:=wdFormatUnicodeText, fileName:=Praefix & Format(i, "0"), AddToRecentFiles:=False
nDoc.Close
Next i
End Sub但是我希望txt文件是utf-8格式的。我该怎么做呢?
谢谢
froyo (对不起,我的英语)
发布于 2012-08-01 20:34:24
我找到了我问题的答案:
nDoc.SaveAs Encoding:=msoEncodingUTF8, FileFormat:=wdFormatUnicodeText, fileName:=Praefix & Format(i, "0"), AddToRecentFiles:=False解决方案是将部件"Encoding:=msoEncodingUTF8“添加到saveAs方法中!
弗罗约
https://stackoverflow.com/questions/11736327
复制相似问题