Тема: Пакетное преобразование doc->docx
решил уменьшить место путем преобразования старых doc в docx
однако их очень много
существует такой способ?
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
решил уменьшить место путем преобразования старых doc в docx
однако их очень много
существует такой способ?
и какие ощущения файл док 1 Мб каким по весу в докх станет?
стоит ли овчинка выделки?
и какие ощущения файл док 1 Мб каким по весу в докх станет?
стоит ли овчинка выделки?
Например, файл размером 4,5 MB преобразовался в 4,4 MB. Уменьшение в этом случае получилось незначительным. В каких-то случаях оно может быть несколько больше, но массово преобразовывать файлы из одного формата в другой ради уменьшения объема хранения на диске я бы не советовал.
А так - вопрос очень интересный.
я понимаю, что рискую потерять разметку (а возможно и данные) в каких-то документах и тем не менее вопрос остается в силе.
кстати в моем случае файлы уменьшаются в 2-3 раза по размеру, причем у меня не только текст (который хорошо жмется архивным форматом), но и изображения и тп
Вот примерный код экспорта файлов
Public Sub ExportFormatDocToDocX()
Dim Fl As FileDialog, Fr As FileDialog, FolderName As String
Dim EDoc As Document, i As Long
Set Fr = Application.FileDialog(msoFileDialogFolderPicker)
With Fr
.Title = "Выбор папки сохранения"
.ButtonName = "Выбрать"
.AllowMultiSelect = False
End With
Fr.Show
If Fr.SelectedItems.Count = 0 Then
MsgBox "Вы не выбрали папку сохранения!!!", vbCritical
Exit Sub
End If
FolderName = Fr.SelectedItems(1)
Set Fl = Application.FileDialog(msoFileDialogFilePicker)
With Fl
.Title = "Выбор файлов для экспорта"
.ButtonName = "Экспортировать"
.Filters.Clear
.Filters.Add "Файлы", "*.doc"
End With
Fl.Show
If Fl.SelectedItems.Count = 0 Then
MsgBox "Вы не выбрали файлы для экспорта!!!", vbCritical
Exit Sub
End If
For i = 1 To Fl.SelectedItems.Count
Set EDoc = Documents.Open(Fl.SelectedItems(i))
n = Split(EDoc.Name, ".")
f = n(0) & ".docx"
FolderName = FolderName & "\"
EDoc.Convert
ChangeFileOpenDirectory _
FolderName
EDoc.SaveAs2 f
EDoc.Close
Next i
End Sub
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться