Новости:

Новая редакция правил форума: 2.4. Если вопрос или ответ содержится во вложенном файле, все-равно кратко описывайте в сообщении вопрос или суть решения. Это необходимо, чтобы тему можно было найти через поиск.

Главное меню

VBA. копирование Листа вместе с макросом

Автор 0mega, 26.12.2018, 22:23

« назад - далее »

0mega

 С наступающим.

есть макрос который копирует Лист и создает копию в другой папке
Sub Copy_Clear()
   Dim wkbNew As Workbook
    Sheets("3AKA3").Copy
    Set wkbNew = ActiveWorkbook
    wkbNew.Sheets(1).Name = "3AKA3"

и еще всякое-разное, которе здесь не имеет значения ...

Это все работает .
Вместе с таблицей на копию уходит и кнопочка запуска макроса.
Как вместе с копией отправить и макрос  тоже
Чтобы на копии можно было нажать на кнопочку и макрос начинал работать (но уже в другой книге)


_Boroda_

Поместите макрос не в стандартный модуль, а в модуль этого копируемого листа
Скажи мне, кудесник, любимец ба'гов...



Яндекс-деньги: 41001632713405
Webmoney: R289877159277; Z102172301748; E177867141995

0mega

александр, здравствуйте
Для меня это набор некорых понятных слов
нельзя ли в подробностях расстолковать где что взять и куда его поместить ?

_Boroda_

Здравствуйте!
Если просто руководство к действию - то ПКМ на ярлычке листа (того, который будем переносить) - Исходный текст - откроется белое окошко, в него нужно вставить нужный макрос. Затем скопировать его название, нажать Контрл F (окошко поиска), вставить туда скопированное, выбрать точку Сurrent Project и нажать Искать. Первым найдет тот макрос, который только что был вставлен, а вторым найдет тот, который уже в книге был, но сейчас нам стал ненужен. Его нужно удалить (начиная с Sub и до следующего End Sub). Возможно получится наоборот - ненужный найдется первым, а нужный вторым, это зависит от положения курсора в момент начала поиска. Понять, где Вы находитесь, можно по шапке того окна, где в данный момент стоит курсор
По поводу более подробно почитайте например вот здесь
https://www.excel-vba.ru/chto-umeet-excel/chto-takoe-modul-kakie-byvayut-moduli/
Скажи мне, кудесник, любимец ба'гов...



Яндекс-деньги: 41001632713405
Webmoney: R289877159277; Z102172301748; E177867141995

0mega

спасибо.
Все получилось
чтобы не выбирать who is who Я оставил оба макроса
пока не конфликтуют

0mega

тестовый  вариант на "тройке" работает отлично.
Рабочий 13-ый excel начинает "качать права".  То ему не так, это ему не эдак ...
Иду на уступки и меняю расширение  на .xlsm
все равно машина ругается и указывает на формат сохранения .
что от меня хочет машина и как удовлетворить ее запросы

_Boroda_

Поверните уже монитор к окну лицом, а то мне не видно что там в коде написано
Скажи мне, кудесник, любимец ба'гов...



Яндекс-деньги: 41001632713405
Webmoney: R289877159277; Z102172301748; E177867141995

0mega

Этот код на тройке работает а на десятке не хочет. Ну это естественно. Расширение не то
wkbNew.SaveAs "C:\users\Admin\desktop\APXUB\3AKA3 " & Year(Now()) & "_" & Second(Now()) & ".xls"

для 10-ки переписал на
wkbNew.SaveAs "C:\users\Admin\desktop\APXUB\3AKA3 " & Year(Now()) & "_" & Second(Now()) & ".xlsm"
но и такой вариант ее (10-ку) не устраивает

boa

Для метода SaveAs указывайте явно формат файла и будет работать на всех версиях
wkbNew.SaveAs Filename:="C:\users\Admin\desktop\APXUB\3AKA3 " & Year(Now()) & "_" & Second(Now()) & ".xls", FileFormat:=xlExcel8
Ничто не обходится нам так дешево и не ценится так дорого, как вежливость...  Мигель Сервантес де Сааведра