Присвояване на макрос на формуляр или бутон за контрола

Отнася се за
Excel за Microsoft 365 Excel за Microsoft 365 за Mac Excel 2024 Excel 2024 за Mac Excel 2021 Excel 2021 за Mac Excel 2019 Excel 2016

Можете да използвате бутон за контрола на формуляр или команден бутон (ActiveX контрола), за да изпълните макрос, който извършва действие, когато някой потребител щракне върху него. И двата бутона са известни също и като активиращ бутон, който може да бъде настроен да автоматизира отпечатването на работен лист, филтрирането на данни или изчисляването на числа. По принцип бутонът за контрола на формуляр и командният бутон на ActiveX контрола си приличат по вид и функции. Те обаче имат няколко разлики, които са обяснени в следващите раздели.

Съвет

Информацията в тази статия е предназначена за напреднали потребители на Excel. За повече информация относно макросите отидете на "Добавяне или редактиране на макрос за контрола в работен лист".

Бутон (контрола на формуляр)
Пример за контрола на бутон на лентата с инструменти
Команден бутон (ActiveX контрола)
Пример за ActiveX контрола – команден бутон

В раздела по-долу научете как да добавите макрос към бутон в Excel – за Windows или Mac.

Забележка

ActiveX контролите не се поддържат на Mac.

Макросите и инструментите на VBA са в раздела "Разработчик ", който е скрит по подразбиране.

Първата стъпка е да я разрешите. За повече информация вж. статията: Показване на раздела "Разработчик".

Раздел

Добавяне на бутон (контрола на формуляр)

  1. В раздела "Разработчик", в групата "Контроли" щракнете върху "Вмъкване" и след това под "Контроли на формуляр" щракнете върху "Бутонизображение
  2. Щракнете върху местоположението в работния лист, където искате да се покаже горният ляв ъгъл на бутона. Появява се изскачащият прозорец "Присвояване на макрос ".
  3. Присвоете макрос на бутона и след това щракнете върху OK.
  4. За да зададете свойствата на контролата на бутона, щракнете с десния бутон върху бутона и след това щракнете върху "Форматиране на контрола".

Добавяне на команден бутон (ActiveX контрола)

  1. В раздела "Разработчик ", в групата "Контроли " щракнете върху "Вмъкване" и след това под ActiveX контроли щракнете върху "Бутонза команда .

  2. Щракнете върху местоположението в работния лист, където искате да се покаже горният ляв ъгъл на командния бутон.

  3. В групата ''Контроли '' щракнете върху ''Покажи кода''. Така се стартира редакторът на Visual Basic. Уверете се, че в падащия списък отдясно е избрано "Щракване ". Подпроцедурата CommandButton1_Click (вж. фигурата по-долу) изпълнява тези два макроса при щракване върху бутона: SelectC15 и HelloMessage.
    Подпроцедура в редактора на Visual Basic

  4. В подпроцедурата за командния бутон направете едно от следните неща:

    • Въведете името на съществуващ макрос в работната книга. Можете да намерите макроси, като щракнете върху "Макроси " в групата " Код ". Можете да изпълните няколко макроса от един бутон, като въведете имената на макросите на отделни редове в подпроцедурата.
    • Ако е необходимо, добавете собствен VBA код.
  5. Затворете редактора на Visual Basic и щракнете върху бутона '' Режим на проектиране' ', за да се уверите, че режимът на проектиране е изключен.

  6. За да изпълните VBA кода, който сега е част от бутона, щракнете върху ActiveX командния бутон, който току-що създадохте.

  7. За да редактирате ActiveX контролата, уверете сте, че сте в режим на проектиране. В раздела "Разработчик ", в групата "Контроли " включете режима на проектиране.

  8. За да зададете свойствата на контролата на командния бутон, в раздела "Разработчик ", в групата "Контроли " щракнете върху "Свойства за свойства. Можете също да щракнете с десния бутон върху командния бутон и след това да щракнете върху "Свойства".

    Забележка

    Преди да щракнете върху "Свойства", уверете се, че обектът, чиито свойства искате да прегледате или промените, вече е избран.

    Появява се полето "Свойства". За подробна информация за всяко едно свойство изберете свойството и след това натиснете клавиша F1, за да покажете помощна тема за Visual Basic. Можете също да въведете името на свойството в полето за търсене в помощта на Visual Basic. Следващата таблица обобщава наличните свойства на формата.

Ако искате да зададете Използвайте това свойство
Общи:
Дали контролата да се зарежда при отваряне на работната книга. (Игнорира се за ActiveX контроли.) Автоматично зареждане (Excel)
Дали фокусът може да отива в контролата и тя да отговори на събития, генерирани от потребителя. Enabled (Формуляр)
Дали контролата може да бъде редактирана. Заключен (Формуляр)
Името на контролата. Име (формуляр)
Начина, по който контролата се прикачва към клетките под нея (свободно плаване, преместване, но без преоразмеряване, или преместване и преоразмеряване). Разположение (Excel)
Дали контролата може да бъде отпечатвана. PrintObject (Excel)
Дали контролата да бъде видима, или скрита. Visible (Form)
Текст:
Атрибутите на шрифта (получер, курсив, размер, зачеркнат, подчертан и тегло). Получер, курсив, размер, зачеркнато, подчертано, тегло (формуляр)
Описателен текст на контролата, която го идентифицира или описва. Надпис (формуляр)
Дали съдържанието на контролата автоматично преминава на нов ред. WordWrap (Формуляр)
Размер и позиция:
Дали размерът на контролата да се наглася автоматично, за да покаже цялото съдържание. AutoSize (Формуляр)
Височината или ширината в точки. Височина, ширина (формуляр)
Разстоянието между контролата и левия или горния край на работния лист. Ляво, най-горе (формуляр)
Форматиране:
Цвета на фона. BackColor (Формуляр)
Стила на фона (прозрачен или непрозрачен). BackStyle (Формуляр)
Цвета на текста. ForeColor (Формуляр)
Дали контролата да има сянка. Сянка (Excel)
На снимката:
Изображението, което да се показва в контролата. Картина (формуляр)
Местоположението на картината спрямо надписа й (ляво, горе, дясно и т. н.). PicturePosition (Формуляр)
Клавиатура и мишка:
Клавишната комбинация за контролата. Ускорител (формуляр)
Персонализирана икона на мишка. MouseIcon (Формуляр)
Типа показалец, който да се показва при позициониране на мишката над определен обект (стандартен, стрелка, отвесна черта и т.н.). MousePointer (Формуляр)
Дали фокусът се премества в контролата при щракване. TakeFocusOnClick (Формуляр)

Имате нужда от още помощ?

Винаги можете да попитате експерт в техническата общност за Excel или да получите поддръжка в общностите.

Вж. също