Уточнить файл Ворд открыт для чтения? - VBA

Узнай цену своей работы

Формулировка задачи:

подскажите как при помощи ВБА уточнить файл Ворд открыт только для чтения? если да - тогда сделать его в обычном режиме то есть не только для чтения потом произвести нужное и снова сделать для чения Вроде по последнему строка кода есть:
сейчас не могу проверить, может так:

Решение задачи: «Уточнить файл Ворд открыт для чтения?»

textual
Листинг программы
Sub P2()
Dim Путь As String
Dim Атрибуты As Integer
'Если документ открыт только для чтения, то:
If ActiveDocument.ReadOnly = True Then
    'Записываем путь к файлу (т.к. его придётся заново открывать).
    Путь = ActiveDocument.FullName
    'Записываем в переменную Атрибуты, какие атрибуты есть у файла,
    'чтобы затем вернуть их на место (они выражаются в числах).
    'Эти атрибуты находятся: щ. правой кн. мыши по файлу - Свойства.
    Атрибуты = GetAttr(PathName:=Путь)
    'Стираем все атрибуты файла, кроме Normal. Вдруг среди них
    'есть атрибут Только чтение.
    SetAttr PathName:=Путь, Attributes:=vbNormal
    'Закрываем документ, чтобы можно было открыть для редактирования.
    ActiveDocument.Close SaveChanges:=wdDoNotSaveChanges
    'Открываем документ для редактирования.
    Documents.Open FileName:=Путь
    'Здесь выполняются действия с документом.
    MsgBox "Документ открыт для редактирования"
    'Закрываем документ, чтобы снова открыть в режиме Только чтение.
    ActiveDocument.Close
    'Восстанавливаем атрибуты файла.
    SetAttr PathName:=Путь, Attributes:=Атрибуты
    'Открываем документ в режиме Только чтение.
    Documents.Open FileName:=Путь, ReadOnly:=True
Else
    'Если документ был с самого начала открыт для редактирования.
    MsgBox "Документ не был открыт только для чтения"
End If
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.267 из 5
Похожие ответы