Ошибка «Не удается запустить макрос» после закрытия и повторного открытия книги с помощью макроса - PullRequest
1 голос
/ 11 июня 2019

Итак, я написал очень простой фрагмент кода, который по существу отменял бы изменения, внесенные другим макросом.Другой макрос сохраняет рабочую книгу, затем копирует данные на другой лист и удаляет исходные данные.Сценарий «Отменить», который я написал, просто закрывает и снова открывает книгу, не сохраняя ее - я не знаю, что это глупо, но лучше, чем ничего.Он отлично работает и выполняет то, что я хочу, но при повторном открытии книги я получаю следующее предупреждение: «Не удается запустить макрос« OpenMe ». Макрос может быть недоступен в этой книге или все макросы могут быть отключены».Все мои макросы все еще работают нормально после повторного открытия.Вот код, который я имею для макроса закрытия и открытия:

Sub Yes_Click()

Application.OnTime Now + TimeValue("00:00:01"), "OpenMe"
ThisWorkbook.Close SaveChanges:=False

End Sub

Sub OpenMe()

MsgBox "Changes Undone"

End Sub

Sub No_Click()

Undo.Hide

End Sub

Все, что я хочу, это чтобы это глупое предупреждение не появлялось!Любые предложения приветствуются:)

Ответы [ 2 ]

0 голосов
/ 11 июня 2019

Я нашел решение - мне пришлось перенести код для OpenMe () в отдельный модуль, после чего все заработало без предупреждения :)

0 голосов
/ 11 июня 2019

Вам нужно снова открыть книгу, иначе у вас не будет кода для запуска:

Sub Yes_Click()

    Application.OnTime Now + TimeValue("00:00:01"), "OpenMe"
    ThisWorkbook.Close SaveChanges:=False

End Sub
Sub OpenMe()

    Dim wb As Excel.Workbook
    Set wb = ThisWorkbook

    Dim pth As String
    pth = wb.FullName

    Application.Workbooks.Open pth
    MsgBox "Changes Undone"

End Sub
Sub No_Click()

    Undo.Hide

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