![]() |
VB: удалить макрос
есть макрос в Ворде который автоматически стартует при открытии документа ("Private Sub Document_Open()") выполняет некоторые действия и потом сохраняет новый документ.
Проблема в том, что в новом сохраненном файле макрос не нужен совершенно. делаю следующее: Код:
ThisDocument.SaveAs FileName:="F:\" + variable + ".doc"Цитата:
задача максимум: удалить макрос в новом документе задача минимум: убрать автостарт макроса в новом документе |
Отвечу по старой памяти.
Если удерживать SHIFT при открытии, то макрос работать не будет... Либо как вариант, отключить вообще макросы, потом отредактировать, потом включить. |
не вариант, автоматика нужна, для того и макрос
|
Удаление всего VBA-проекта для Excel, для Word думаю будет аналогично:
Код:
Private Sub DelProject()P.S. Зато можно сохранить документ в формате RFT (в нем макросов не будет), потом, если нужно, этот rtf можно снова сохранить в doc: Код:
ThisDocument.SaveAs FileName:="F:\" + variable + ".doc", FileFormat:=wdFormatRTF |
Set prj = VBProject.VBComponents -> object required
If x.Name = Me.CodeName Then -> Method or data member not found с RTF задача минимум выполнена, псиб. |
Цитата:
Допустим, начальный документ start.doc Private Sub Document_Open() If ActiveWindow.Document.Name = "start.doc" Then MsgBox ("Начали!") Else Exit Sub End If End Sub Вместо MsgBox макрос, который надо запустить. Если не start.doc, то не запускается. А там, наверно, и удалить лишнее можно... |
А про Excel можете написать, пожалуйста, как в нем удалить макрос программным путем?
|
А если создать из макроса новый документ и скопировать туда что нужно?
|
| Часовой пояс GMT +4, время: 21:14. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.