|
Компьютерный форум OSzone.net » Сфера Microsoft » Microsoft Office (Word, Excel, Outlook и т.д.) » 2013 - [решено] Макрос Office 2013, with |
|
2013 - [решено] Макрос Office 2013, with
|
Пользователь Сообщения: 94 |
Уважаемый пользователи,
В файле есть несколько форм(shape 1,2 итд),к ним хочется применить единые правила оформления и сократить код. Не получается вынести повторяющиеся участки кода в отдельную процедуру-подпрограмму-ошибка компилятора,при инициализации кода макроса. Есть возможность реализовать это на языке VBA? Благодарю,всего доброго Вам, Sub style With ActiveDocument.Shapes() rem () все формы в проекте .Visible = msoTriStateToggle .BackgroundStyle = msoBackgroundStylePreset10 |
|
Отправлено: 13:03, 03-08-2017 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата victor21043:
|
|
Отправлено: 13:50, 03-08-2017 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 94
|
Профиль | Отправить PM | Цитировать |
Последний раз редактировалось victor21043, 11-08-2017 в 09:14. Отправлено: 23:35, 03-08-2017 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата victor21043:
Цитата victor21043:
Скрытый текст
Цитата victor21043:
|
|||
Отправлено: 09:46, 04-08-2017 | #4 |
Пользователь Сообщения: 94
|
Профиль | Отправить PM | Цитировать Run time error 445-Объект не поддерживает такого действия
Sub style() Dim objShape As Shape For Each objShape In ThisDocument.Shapes With objShape .BackgroundStyle = msoBackgroundStylePreset10 With .Reflection .Type = msoReflectionType1 .Transparency = 0.5 .Size = 22 .Offset = 0 End With End With Next objShape End Sub Public Sub ButtonN_click() ActiveDocument.Shapes(N).Visible = msoTriStateToggle Call style end sub |
|
Последний раз редактировалось victor21043, 07-08-2017 в 18:59. Отправлено: 09:39, 05-08-2017 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать victor21043, я ничего не могу сказать, поскольку а) не понимаю, что Вы хотите сделать и б) у меня другая верси Office.
|
Отправлено: 09:51, 05-08-2017 | #6 |
Динохромный Сообщения: 704
|
Профиль | Отправить PM | Цитировать К сожалению, у меня в ближайшее - до среды - время доступ только к смарту на Андроиде, посмотреть работу кода негде. В остальном - нечего добавить к словам Iska .
victor21043, в изначальном коде алгоритм пытается присвоить свойства одного экземпляра shape коллекции (совокупности) таких элементов, подобные задачи решаются перебором всех экземпляров коллекции и присваиванием значения свойства каждого экземпляра (то, что привел в коде Iska) Так вот, мне не очень понятно, как сработал этот (правильный) код, ошибку вы приводите для него, или для своего? Цель вашей корректировки - привязать код к кнопке? В вашем варианте N2 меня смущает строчка ActiveDocument.Shapes(N).Visible = msoTriStateToggle, на мой взгляд - работать не должна. Попробуйте запустить код Iska пошагово, через нажатие в vba редакторе F8, отследите исполнение какой строчки кода вызывает ошибку, по возможности удалите эту строку дабы понять, будет ли работать остальная часть кода. Если вы хотите привязать код к кнопке, просто замените заглавие Sub Sample() на Public Sub ButtonN_click() PS мысли вслух: не имея возможности открыть ваш файл - вы уверены, что перебирать нужно коллекцию shapes? |
Отправлено: 11:48, 05-08-2017 | #7 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Наборы - MS Office 2013 PreSP2, Office 2010 PreSP3, Office 2007 PreSP4 и Office 2003 PreSP4 | sklart | Наборы обновлений для Windows XP/2003/Windows 7 | 1517 | 17-02-2025 13:46 | |
Вредоносный макрос в документах Office нашёл новые способы избежать обнаружения | OSZone News | Новости информационных технологий | 0 | 09-06-2016 16:30 | |
Использование - Office Professional 2013 для Win & Office for Mac Standard 2011 | Looking | Лицензирование продуктов Microsoft | 1 | 08-09-2015 01:25 | |
2013 - Акция :Купи Office 2010 получи Office 2013 | gudwin_oz | Microsoft Office (Word, Excel, Outlook и т.д.) | 3 | 14-06-2013 17:14 | |
Microsoft официально выпустила Office 2013 и Office 365 | OSZone News | Новости и события Microsoft | 0 | 30-01-2013 18:30 |
|