Selection.ClearFormatting не может быть запущен - PullRequest
0 голосов
/ 11 января 2020

Примечание: ОП теперь показал, что он пытается сделать это с документом Word, используя Excel

Я хочу очистить весь формат слова

Sub clearformat()
    Dim MyDialog As FileDialog, vrtSelectedItem As Variant, doc As document
    Dim wApp As Object
    Set wApp = CreateObject("Word.Application")
    Set MyDialog = Application.FileDialog(msoFileDialogFilePicker)
    With MyDialog
    .Filters.Clear
    .Filters.Add "所有 WORD 文件", "*.doc;*.docx", 1
    .AllowMultiSelect = True
        If .Show = -1 Then
            Application.ScreenUpdating = False
            For Each vrtSelectedItem In .SelectedItems
            Set doc = wApp.Documents.Open(filename:=vrtSelectedItem, Visible:=False)
            doc.Sections(1).Range.Select
            Selection.ClearFormatting
            doc.Close (True)
            Next
            Application.ScreenUpdating = True
            MsgBox "clear finished!", vbInformation
        End If
    End With
End Sub

Я пишу код в файле .xlsm для управления файлом .docx. Объект не поддерживает это свойство и метод для «Selection.ClearFormatting»

1 Ответ

0 голосов
/ 12 января 2020

И в Excel, и в Word есть объект Selection. Если в вашем коде не указано, какой из них вы ссылаетесь на приложение, в котором выполняется код, он будет иметь приоритет, а в вашем случае это Excel. Измените строку кода на:

wApp.Selection.ClearFormatting
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...