Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.01.2010, 15:55   #1
Kuraj
Пользователь
 
Регистрация: 04.01.2010
Сообщений: 20
По умолчанию Создать макрос через маакрос)

Кто знает как создать макрос через макрос)) То есть запустил 1 макрос в нём прописано чего надо записать во второй и скопировать в 2 макрос исходный код взятый например из ячейки)

Если есть какиенить мысли говорим... А если есть материал почитать так тем более
Kuraj вне форума Ответить с цитированием
Старый 14.01.2010, 16:04   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

http://www.programmersforum.ru/showp...49&postcount=2

Код:
With TempForm.CodeModule
    Line = .CountOfLines
    .InsertLines Line + 1, "Sub CommandButtonl_Click()"
    .InsertLines Line + 2, "MsgBox ""Привет!"""
    .InsertLines Line + 3, "Unload Me"
    .InsertLines Line + 4, "End Sub"
End With
PS: В Вашем случае, скорее всего, задача решается проще.
К программному созданию макросов есть необходимость прибегать лишь в исключительных случаях.

Информация по теме есть здесь.
EducatedFool вне форума Ответить с цитированием
Старый 15.01.2010, 01:13   #3
Kuraj
Пользователь
 
Регистрация: 04.01.2010
Сообщений: 20
По умолчанию

Вот если так сделать без with то как мне работать с книгой например я её открыл и хочу в событие open записать?
Код:
        Line = .CountOfLines
        .InsertLines Line + 1, "Private Sub Workbook_Open()"
        .InsertLines Line + 2, "MsgBox "Привет!""
        .InsertLines Line + 3, "Unload Me"
        .InsertLines Line + 4, "End Sub"
Kuraj вне форума Ответить с цитированием
Старый 15.01.2010, 19:37   #4
Kuraj
Пользователь
 
Регистрация: 04.01.2010
Сообщений: 20
По умолчанию

With Activebook.VBProject.VBComponents.I tem("ЭтаКнига").CodeModule
Line = .CountOfLines
.InsertLines Line + 1, "Private Sub Workbook_Open()"
.InsertLines Line + 2, "MsgBox ""хело"""
.InsertLines Line + 3, "Unload Me"
.InsertLines Line + 4, "End Sub"
End With

Где ошибка?

Последний раз редактировалось Kuraj; 15.01.2010 в 19:46.
Kuraj вне форума Ответить с цитированием
Старый 15.01.2010, 21:04   #5
Teslenko_EA
Участник клуба
 
Регистрация: 10.08.2009
Сообщений: 1,796
По умолчанию

Здравствуйте Kuraj.
ошибка в обращении к объекту:
Код:
With ThisWorkbook.VBProject.VBComponents.Item("ЭтаКнига").CodeModule
    Line = .CountOfLines
    .InsertLines Line + 1, "Private Sub Workbook_Open()"
    .InsertLines Line + 2, "    MsgBox ""хело"""
    .InsertLines Line + 3, "    'Unload Me" ' команда выгружающая форму в книге не нужна
    .InsertLines Line + 4, "End Sub"
End With
Евгений.
P.S. и в отсутствии обращения к форуму, "Если есть какиенить мысли говорим..." - мысль только одна, Вы не умеете здороваться.
Teslenko_EA вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите создать макрос (SOS!) Ygrek Microsoft Office Excel 0 05.07.2009 17:42
Нужно создать макрос avtopark Microsoft Office Excel 4 28.02.2009 22:00
Помогите создать макрос Светлана632 Microsoft Office Excel 9 10.02.2009 06:18