У меня есть папка, содержащая около 1200 документов слова, которые все сохранены в режиме совместимости. Кто-нибудь знает способ конвертировать каждый из этих файлов, чтобы документы больше не были в режиме совместимости?Удаление режима совместимости на 1000+ текстовых документах
1
A
ответ
0
Откройте окно cmd в вашей папке и введите dir /s /b >>
файл filename.txt, чтобы получить список открытого текста всех файлов в пути. Это даст текстовый файл, перечисляющий все файлы в каталоге.
использования, что в качестве входных данных для следующего
Поскольку вы собираетесь делать это на 1000 файлов, я бы установить точку останова на doc.close
, чтобы проверить его на первых мало, если я вам.
Sub SaveAsDocX(FileListFullPath As String)
'for saving to new filename
Dim newname As String
'array of docs, items in that array, document object from those items
Dim docs As Variant
Dim item As Variant
Dim doc As Document
docs = getfiles(FileListFullPath)
For Each item In docs
If Right(item, 4) = ".doc" Then
Set doc = Application.Documents.Open(FileName:=item)
doc.Activate
newname = item & " - updated.docx"
'first save as new format then update compatibility, then save again
doc.SaveAs2 FileName:=newname, FileFormat:=wdFormatDocumentDefault
ActiveDocument.SetCompatibilityMode (wdCurrent)
doc.SaveAs2 FileName:=newname, FileFormat:=wdFormatDocumentDefault
doc.Close
End If
Next
End Sub
Function getfiles(Optional FileName As String = "Dir.txt")
Dim FileList() As String
Open FileName For Input As #1
FileList = Split(Input$(LOF(1), #1), vbCrLf)
Close #1
getfiles = FileList
End Function