powered by simpleCommunicator - 2.0.41     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Такая проблемка - Есть необходимость удалять макрос прогаммно
11 сообщений из 11, страница 1 из 1
Такая проблемка - Есть необходимость удалять макрос прогаммно
    #32340080
xaly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Такая проблемка:
Есть необходимость удалять макрос прогаммно,
после того как он выполнил свою работу.
Есть ли такая возможность в VBA. Если есть, то как это зделать?
...
Рейтинг: 0 / 0
Такая проблемка - Есть необходимость удалять макрос прогаммно
    #32340084
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DoCmd.DeleteObject acMacro, "Макрос1"
...
Рейтинг: 0 / 0
Такая проблемка - Есть необходимость удалять макрос прогаммно
    #32341682
xaly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а в Excel эта конструкция работать будет?
...
Рейтинг: 0 / 0
Такая проблемка - Есть необходимость удалять макрос прогаммно
    #32341693
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Что именно находится в Excel - макрос или команда, его удаляющая? Но ответ в любом случае - нет.
...
Рейтинг: 0 / 0
Такая проблемка - Есть необходимость удалять макрос прогаммно
    #32341707
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если из экселя нужно удалить макрос в аксесе - то можно
...
Рейтинг: 0 / 0
Такая проблемка - Есть необходимость удалять макрос прогаммно
    #32341726
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Эксель знает, что такое DoCmd???
...
Рейтинг: 0 / 0
Такая проблемка - Есть необходимость удалять макрос прогаммно
    #32341758
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В экселе можно создать Access.Application
А у Access.Application есть пропертя DoCmd.
...
Рейтинг: 0 / 0
Такая проблемка - Есть необходимость удалять макрос прогаммно
    #32341801
xaly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Макрос тоже находится в экселе
и идулять его надо из экселя.
Вот такая штука.
...
Рейтинг: 0 / 0
Такая проблемка - Есть необходимость удалять макрос прогаммно
    #32341810
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Вот такая штука

Правильней написать Вот такая шутка
Задать вопрос про Екцелю в форум по Акесу и никому об том, что вопрос про Екцель не сказать.
...
Рейтинг: 0 / 0
Такая проблемка - Есть необходимость удалять макрос прогаммно
    #32341908
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сенин Виктор писалЗадать вопрос про Екцелю в форум по Акесу и никому об том, что вопрос про Екцель не сказать
Межгалактический мегаресурс аднака
Чтоб телепяты не расслаблялись
...
Рейтинг: 0 / 0
Такая проблемка - Есть необходимость удалять макрос прогаммно
    #32342172
Shkurenko Alexander
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
x>Такая проблемка:
x>Есть необходимость удалять макрос прогаммно,
x>после того как он выполнил свою работу.
x>Есть ли такая возможность в VBA. Если есть, то как это зделать?


Да есть.

Включи cсылку на библиотеку Visual Basic for Application Extensibility.
Разберись с объектной моделью.;)

Пример удаления всех макросов, модулей, модулей классов, форм.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Sub DeleteAllCode()
    Dim vbc As VBComponent
    With Application.VBE.ActiveVBProject
        For Each vbc In .VBComponents
            Select Case vbc.Type
            Case vbext_ct_ClassModule
                .VBComponents.Remove vbc
            Case vbext_ct_MSForm
                .VBComponents.Remove vbc
            Case vbext_ct_StdModule
                .VBComponents.Remove vbc
            Case vbext_ct_Document
                vbc.CodeModule.DeleteLines  1 , vbc.CodeModule.CountOfLines
            End Select
        Next
    End With
End Sub


Для того чтобы удалить отдельный макрос смотри у объекта CodeModule свойства ProcOfLine, ProcStartLine, ProcCountLine и т.д. Чтобы не разбираться во всем этом, может быть имеет смысл перенести макросы, подлежащие удалению, в отдельный модуль, а затем его удалять?

P.S. Маленький нюанс. Начиная с Office2000(по крайне мере в Office XP) необходимо включить флажок "Доверять доступ к Visual Basic Project" (Сервис->Макрос->Безопасность).
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Такая проблемка - Есть необходимость удалять макрос прогаммно
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]