Содержание
- Создание кнопки в Microsoft Excel
- Процедура создания
- Способ 1: автофигура
- Способ 2: стороннее изображение
- Способ 3: элемент ActiveX
- Способ 4: элементы управления формы
- VBA Excel. Первая кнопка (для начинающих)
- Добавление вкладки «Разработчик»
- Кнопка – элемент управления формы
- Вставка кнопки на лист
- Создание процедуры для кнопки
- Excel открыть файл по кнопке
- Легко вставляйте несколько кнопок макросов, чтобы переходить на (каждый) другой лист в Excel
- Панель навигации: список всех открывающихся книг и вкладка вертикального листа для удобного переключения на любой лист
Создание кнопки в Microsoft Excel
Excel является комплексным табличным процессором, перед которым пользователи ставят самые разнообразные задачи. Одной из таких задач является создание кнопки на листе, нажатие на которую запускало бы определенный процесс. Данная проблема вполне решаема с помощью инструментария Эксель. Давайте разберемся, какими способами можно создать подобный объект в этой программе.
Процедура создания
Как правило, подобная кнопка призвана выступать в качестве ссылки, инструмента для запуска процесса, макроса и т.п. Хотя в некоторых случаях, данный объект может являться просто геометрической фигурой, и кроме визуальных целей не нести никакой пользы. Данный вариант, впрочем, встречается довольно редко.
Способ 1: автофигура
Прежде всего, рассмотрим, как создать кнопку из набора встроенных фигур Excel.
- Производим перемещение во вкладку «Вставка». Щелкаем по значку «Фигуры», который размещен на ленте в блоке инструментов «Иллюстрации». Раскрывается список всевозможных фигур. Выбираем ту фигуру, которая, как вы считаете, подойдет более всего на роль кнопки. Например, такой фигурой может быть прямоугольник со сглаженными углами.
Теперь при клике по созданному нами объекту будет осуществляться перемещение на выбранный лист документа.
Способ 2: стороннее изображение
В качестве кнопки можно также использовать сторонний рисунок.
- Находим стороннее изображение, например, в интернете, и скачиваем его себе на компьютер.
- Открываем документ Excel, в котором желаем расположить объект. Переходим во вкладку «Вставка» и кликаем по значку «Рисунок», который расположен на ленте в блоке инструментов «Иллюстрации».
- Открывается окно выбора изображения. Переходим с помощью него в ту директорию жесткого диска, где расположен рисунок, который предназначен выполнять роль кнопки. Выделяем его наименование и жмем на кнопку «Вставить» внизу окна.
- После этого изображение добавляется на плоскость рабочего листа. Как и в предыдущем случае, его можно сжать, перетягивая границы. Перемещаем рисунок в ту область, где желаем, чтобы размещался объект.
Теперь при нажатии на объект будет запускаться выбранный макрос.
Способ 3: элемент ActiveX
Наиболее функциональной кнопку получится создать в том случае, если за её первооснову брать элемент ActiveX. Посмотрим, как это делается на практике.
- Для того чтобы иметь возможность работать с элементами ActiveX, прежде всего, нужно активировать вкладку разработчика. Дело в том, что по умолчанию она отключена. Поэтому, если вы её до сих пор ещё не включили, то переходите во вкладку «Файл», а затем перемещайтесь в раздел «Параметры».
- В активировавшемся окне параметров перемещаемся в раздел «Настройка ленты». В правой части окна устанавливаем галочку около пункта «Разработчик», если она отсутствует. Далее выполняем щелчок по кнопке «OK» в нижней части окна. Теперь вкладка разработчика будет активирована в вашей версии Excel.
- После этого перемещаемся во вкладку «Разработчик». Щелкаем по кнопке «Вставить», расположенной на ленте в блоке инструментов «Элементы управления». В группе «Элементы ActiveX» кликаем по самому первому элементу, который имеет вид кнопки.
- После этого кликаем по любому месту на листе, которое считаем нужным. Сразу вслед за этим там отобразится элемент. Как и в предыдущих способах корректируем его местоположение и размеры.
- Кликаем по получившемуся элементу двойным щелчком левой кнопки мыши.
- Открывается окно редактора макросов. Сюда можно записать любой макрос, который вы хотите, чтобы исполнялся при нажатии на данный объект. Например, можно записать макрос преобразования текстового выражения в числовой формат, как на изображении ниже. После того, как макрос записан, жмем на кнопку закрытия окна в его правом верхнем углу.
Теперь макрос будет привязан к объекту.
Способ 4: элементы управления формы
Следующий способ очень похож по технологии выполнения на предыдущий вариант. Он представляет собой добавление кнопки через элемент управления формы. Для использования этого метода также требуется включение режима разработчика.
- Переходим во вкладку «Разработчик» и кликаем по знакомой нам кнопке «Вставить», размещенной на ленте в группе «Элементы управления». Открывается список. В нем нужно выбрать первый же элемент, который размещен в группе «Элементы управления формы». Данный объект визуально выглядит точно так же, как и аналогичный элемент ActiveX, о котором мы говорили чуть выше.
- Объект появляется на листе. Корректируем его размеры и место расположения, как уже не раз делали ранее.
- После этого назначаем для созданного объекта макрос, как это было показано в Способе 2 или присваиваем гиперссылку, как было описано в Способе 1.
Как видим, в Экселе создать функциональную кнопку не так сложно, как это может показаться неопытному пользователю. К тому же данную процедуру можно выполнить с помощью четырех различных способов на свое усмотрение.
Источник
VBA Excel. Первая кнопка (для начинающих)
Вставка командной кнопки на рабочий лист для начинающих программировать с нуля. Кнопки из коллекций «Элементы управления формы» и «Элементы ActiveX».
Начинаем программировать с нуля
Часть 3. Первая кнопка
[Часть 1] [Часть 2] [Часть 3] [Часть 4]
Добавление вкладки «Разработчик»
Вкладка с инструментами, связанными с VBA Excel, называется «Разработчик». Если этой вкладки нет на вашей ленте, добавьте ее через окно «Параметры»:
- Откройте окно «Параметры» через меню «Файл».
- Выберите вкладку «Настроить ленту».
- В правой колонке установите галочку у пункта «Разработчик» и нажмите «OK».
Кнопка – элемент управления формы
Вставка кнопки на лист
- Выберите вкладку «Разработчик» и нажмите на кнопку «Вставить».
- Нажмите на значок кнопки в коллекции «Элементы управления формы».
- Кликните в любом месте на рабочем листе Excel.
- Откроется окно «Назначить макрос объекту». Нажмите «Отмена», так как макрос для этой кнопки еще не готов.
- После нажатия кнопки «Отмена», на рабочем листе появится новая кнопка из коллекции «Элементы управления формы» в режиме редактирования.
Ухватив мышкой за один из кружочков, можно изменить размер кнопки. Ухватив кнопку за границу, можно перетащить ее в другое место. Также, в режиме редактирования, можно изменить название кнопки прямо на ее поверхности.
Чтобы выйти из режима редактирования кнопки из коллекции «Элементы управления формы», кликните в любом месте на рабочем листе.
Чтобы вернуться в режим редактирования кнопки, кликните по ней правой кнопкой мыши и выберите из контекстного меню нужный пункт. Если вы хотите изменить размер или размещение кнопки перетаскиванием, кликните левой кнопкой мыши в любом месте рабочего листа. После первого клика контекстное меню закроется, а кнопка останется в режиме редактирования.
Создание процедуры для кнопки
Кнопке из коллекции «Элементы управления формы» можно назначить макрос (процедуру), размещенную в стандартном программном модуле.
Создайте или откройте файл Excel с расширением .xlsm (Книга Excel с поддержкой макросов) и перейдите в редактор VBA, нажав сочетание клавиш «Левая_клавиша_Alt+F11».
Если вы не создавали ранее в этом проекте VBA стандартный программный модуль, нажмите кнопку «Module» во вкладке «Insert» главного меню. То же подменю откроется при нажатии на вторую кнопку (после значка Excel) на панели инструментов.
Ссылка на модуль появится в проводнике слева. Если модуль создан ранее, дважды кликните по его ссылке в проводнике, и он откроется справа для редактирования.
Нажмите кнопку «Procedure…» во вкладке «Insert» главного меню. Та же ссылка будет доступна при нажатии на вторую кнопку после значка Excel на панели инструментов.
В открывшемся окне добавления шаблона процедуры оставьте выбранным переключатель «Sub», вставьте в поле «Name» название процедуры «NovayaProtsedura» и нажмите «OK».
В стандартный программный модуль будет вставлен шаблон процедуры «NovayaProtsedura».
Вставьте внутрь шаблона процедуры следующий код:
Источник
Excel открыть файл по кнопке
Иногда вам может потребоваться создать кнопку, чтобы открыть определенный рабочий лист в текущей книге, так что же делать с этим? На самом деле есть несколько методов, которые помогут вам решить эту проблему.
Этот метод поможет вам вставить прямоугольник с закругленными углами, а затем добавить гиперссылку для этого прямоугольника с закругленными углами на определенный рабочий лист. Вы можете сделать следующее:
1. Нажмите Вставить > Формы > Прямоугольник с закругленными углами. См. Снимок экрана:
2. Нарисуйте на листе прямоугольник с закругленными углами, и вы можете отформатировать его и ввести текст по своему усмотрению. В нашем случае мы набираем Перейти к листу 1 как показано ниже:
3. Щелкните правой кнопкой мыши прямоугольник с закругленными углами и выберите Гиперссылка из контекстного меню.
4. В открывшемся диалоговом окне «Вставить гиперссылку»
(1) Выберите Место в этом документе в Ссылка на раздел;
(2) Щелкните, чтобы выбрать имя определенного листа в Или выберите место в этом документе раздел;
(3) Введите адрес ячейки назначения в поле Введите ссылку на ячейку поле и, наконец, щелкните OK кнопку.
Теперь, когда вы щелкаете прямоугольник с закругленными углами, он сразу переходит к указанной ячейке указанного листа.
Легко вставляйте несколько кнопок макросов, чтобы переходить на (каждый) другой лист в Excel
Чтобы вставить кнопку макроса для перехода на другой рабочий лист, обычно вам нужно выполнить все вышеуказанные 5 шагов, и будет довольно утомительно вставлять много кнопок макросов для перехода на каждый рабочий лист в текущей книге. Но, Kutools for Excel’s Создать список имен листов Утилита позволяет быстро вставлять несколько макрокоманд для перехода на каждый рабочий лист.
Эта медитация Создать список имен листов Утилита также поддерживает пакетную вставку нескольких гиперссылок для перехода на каждый рабочий лист (или другие рабочие листы) в текущей книге.
Этот метод проведет вас через создание кнопки управления формой для открытия определенного рабочего листа. Вы можете сделать следующее:
1, Нажмите Застройщик > Вставить > Пуговичка in Контроль формы раздел. См. Снимок экрана:
Внимание: По умолчанию вкладка «Разработчик» не отображается на ленте. Нажмите, чтобы узнать. как показать / отобразить вкладку разработчика в ленте Excel.
2. Нарисуйте кнопку, затем появится диалоговое окно «Назначить макрос». В диалоговом окне введите имя макроса в поле Имя макроса поле, а затем щелкните Новинки кнопку.
3. Теперь открывается диалоговое окно Microsoft Visual Basic для приложений. Вставьте следующий код между ниже и End sub. См. Снимок экрана:
Код: перейти к определенному листу в Excel
Внимание: В коде измените Sheet1 к требуемому имени листа в зависимости от ваших потребностей.
4. Сохраните код и закройте окно Microsoft Visual Basic для приложения. Теперь вы получите кнопку управления формой, как показано на снимке экрана ниже. Нажмите кнопку, и вы сразу же перейдете к указанному листу.
Оба вышеуказанных метода могут создать только одну кнопку для открытия одного листа. Если вы хотите создать несколько кнопок, чтобы открыть все листы, вам следует попробовать Kutools for Excel’s Создать список имен листов утилита.
Kutools for Excel — Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная пробная версия 30 -день, кредитная карта не требуется! Get It Now
1, Нажмите Кутулс Плюс > Рабочий лист > Создать список имен листов.
2. В диалоговом окне «Создать список имен листов»
(1) Проверьте Содержит кнопки и макросы вариант в Стили указателя листов раздел;
(2) В Укажите имя листа для указателя листов поле введите имя для нового созданного листа;
(3) Укажите положение индексной страницы в Вставьте указатель листа в раскрывающийся список;
3, Нажмите OK кнопка. Затем он создаст индексную страницу с несколькими кнопками. Каждая кнопка названа своим именем рабочего листа и связана с этим листом. См. Снимок экрана ниже:
Внимание: Этот метод требует включения Доверие к объектной модели проекта VBA вариант в Центре управления безопасностью.
Kutools for Excel — Включает более 300 удобных инструментов для Excel. Полнофункциональная бесплатная пробная версия 30 -день, кредитная карта не требуется! Get It Now
Панель навигации: список всех открывающихся книг и вкладка вертикального листа для удобного переключения на любой лист
Kutools для Excel Область переходов перечисляет все открывающиеся книги и соответствующие рабочие листы по вертикали, как показано на скриншотах ниже. (1) Щелкнув книгу в Workbook раздел переключится на это окно книги; (2) при щелчке листа в Рабочий лист раздел будет пропущен, чтобы открыть этот рабочий лист.
Источник
Здравствуйте, подскажите пожалуйста, какой код VBA нужно написать, чтобы с кнопки ActiveX на листе Excel открывался Word файл. Файл лежит в одной папке с Excel. НО планируется распространить данный файл всем коллегам , поэтому , нужен относительный путь к файлу (то есть путь к файлу будет у каждого человека свой ) ? Изменено: Владислав Макеев — 08.09.2022 00:41:14 |
|
New Пользователь Сообщений: 4582 |
#2 08.09.2022 00:56:26
Изменено: New — 08.09.2022 00:58:02 |
||
Владислав Макеев Пользователь Сообщений: 8 |
#3 09.09.2022 16:23:42
Спасибо огромное ,за такой быстрый ответ!!!Код заработал!!! Но если не сложно сможете подсказать, excel открывает у меня файл, но в свернутом виде , как доработать код так , чтобы он всегда открывался в развернутом виде? |
||||
New Пользователь Сообщений: 4582 |
#4 09.09.2022 16:35:19 пожалуйста, не нажимайте кнопку Цитировать, я помню, что я писал вам. Нажимайте кнопку «Имя»
Изменено: New — 10.09.2022 01:14:22 |
||
Тимофеев Пользователь Сообщений: 1497 |
#5 09.09.2022 16:48:57
|
||
Тимофеев, спасибо за Ваш вариант он мне подошёл, я активировал строчку кода myWord.Active и теперь файл открывается при запуске кнопки! Но вот небольшой вопрос , а если я положу Word файл в отдельную папку, он мне выдаст ошибку , как это поправить? Изменено: Владислав Макеев — 10.09.2022 00:35:58 |
|
добавить в макрос диалог выбора файла |
|
New Пользователь Сообщений: 4582 |
#8 10.09.2022 01:20:06
Изменено: New — 10.09.2022 01:22:02 |
||
Александр Моторин, New, Извините что вел вас в заблуждение , но по моему я некорректно выразился. Под словом отдельная папка я имел ввиду , то что файл excel и файл word лежат в одной папке.И для того чтобы вордовский файл не мешался ,я для него создал отдельную папку там же , по сути файлы находятся рядом. Пример, путь к файлу excel: C:Рабочий столРасчётыРасчёты закупок.xlsx , а путь к вордовскому файлу C:Рабочий столРасчётыПрайсыАктуальный прайс.docx. Изменено: Владислав Макеев — 10.09.2022 03:03:55 |
|
New Пользователь Сообщений: 4582 |
#10 10.09.2022 03:06:57 чувствую эта тема будет бесконечной…
|
||
New, Тимофеев. Искренне благодарю за плодотворную, качественную работу, выполненную в короткий срок на высоком профессиональном уровне. Это позволило достичь эффективных результатов. Спасибо за проявленные старания, ответственность, добросовестность, трудолюбие, за удачно примененные глубокие знания и огромный практический опыт. Надеюсь на еще более успешную работу в дальнейшем. Изменено: Владислав Макеев — 11.09.2022 16:40:23 |
|
RAN Пользователь Сообщений: 7091 |
#12 11.09.2022 19:46:46
|
||
На листе мы можем вставить гиперссылку, чтобы связать другую книгу, чтобы ее можно было быстро и легко открыть. Но пробовали ли вы когда-нибудь создать кнопку для открытия другой книги через активную книгу?
Применить кнопку, чтобы открыть другую книгу с кодом VBA
Применить кнопку, чтобы открыть другую книгу с кодом VBA
В Excel мы можем вставить кнопку формы, а затем связать с ней код. Вы можете решить эту задачу, выполнив следующие шаги:
1. Нажмите Вставить > Формы > Прямоугольные, см. снимок экрана:
2. Затем перетащите мышь, чтобы нарисовать кнопку формы, и отформатируйте ее по своему усмотрению, см. Снимок экрана:
3. А затем удерживайте ALT + F11 , чтобы открыть Microsoft Visual Basic для приложений окно.
4. Нажмите Вставить > Модулии вставьте следующий код в Модули Окно.
Код VBA: откройте конкретную книгу:
Sub Openworkbook_Click()
'Updateby Extendoffice
Dim xWb As Workbook
Dim wbName As String
On Error Resume Next
Set xWb = Workbooks.Open("C:UsersDT168DesktoptestBook2.xlsx")
wbName = xWb.Name
If Err.Number <> 0 Then
MsgBox "This workbook does not exist!", vbInformation, "Kutools for Excel"
Err.Clear
Else
MsgBox "This workbook is opened!", vbInformation, "Kutools for Excel"
End If
End Sub
Внимание: В приведенном выше коде вы должны изменить путь и имя файла C: Users DT168 Desktop test Book2.xlsx на реальный путь к книге, на которую вы хотите создать ссылку.
5. Затем сохраните и закройте это окно кода, щелкните правой кнопкой мыши кнопку формы, которую вы создали, выберите Назначить макрос из контекстного меню во всплывающем Назначить макрос диалоговом окне щелкните имя макроса Openworkbook_Click вы вставили только что и щелкните OK кнопку, см. снимок экрана:
6. Теперь, когда вы нажимаете кнопку формы:
(1.) Если книга не существует, появится следующее окно подсказки:
(2.) Если книга существует, она будет открыта сразу же, а также появится окно подсказки, напоминающее вам:
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Комментарии (2)
Оценок пока нет. Оцените первым!
ookullme 0 / 0 / 0 Регистрация: 04.01.2019 Сообщений: 59 |
||||||||
1 |
||||||||
13.01.2020, 14:55. Показов 6261. Ответов 14 Метки нет (Все метки)
Добрый день. Помогите разобраться. Пытался скачивать его с хостинга, затем открывать из указанного пути
Пытался просто открывать файл
Но при открытии он выдает ошибку а-ля «файл поврежден».
0 |
Leitto 6 / 5 / 1 Регистрация: 29.12.2014 Сообщений: 174 |
||||||||
13.01.2020, 17:47 |
2 |
|||||||
ookullme, Существует библиотека для работы с экселем )
0 |
Pavel55 971 / 353 / 135 Регистрация: 27.10.2006 Сообщений: 764 |
||||
13.01.2020, 17:58 |
3 |
|||
Leitto, 1) в строке Workbooks.Open() все Type.Missing можно удалить. можно сократить
0 |
0 / 0 / 0 Регистрация: 04.01.2019 Сообщений: 59 |
|
13.01.2020, 18:52 [ТС] |
4 |
ookullme, Существует библиотека для работы с экселем ) Так я тоже пробовал, столкнулся с проблемой)
0 |
0 / 0 / 0 Регистрация: 04.01.2019 Сообщений: 59 |
|
13.01.2020, 21:12 [ТС] |
5 |
Плюс программа будет открываться на другом ПК, следовательно там ее нужно будет откуда-то качать, ибо путь заранее неизвестен.
0 |
6 / 5 / 1 Регистрация: 29.12.2014 Сообщений: 174 |
|
14.01.2020, 00:00 |
6 |
ookullme, После компилирования не нужно будет на другом компе что то качать но вы не поставили библиотеку
0 |
0 / 0 / 0 Регистрация: 04.01.2019 Сообщений: 59 |
|
14.01.2020, 00:04 [ТС] |
7 |
ookullme, После компилирования не нужно будет на другом компе что то качать но вы не поставили библиотеку А как сделать?
0 |
6 / 5 / 1 Регистрация: 29.12.2014 Сообщений: 174 |
|
14.01.2020, 00:24 |
8 |
ookullme, Когда то в свое время я делал такую штуку возьмите и используйте как основу
1 |
971 / 353 / 135 Регистрация: 27.10.2006 Сообщений: 764 |
|
14.01.2020, 14:06 |
9 |
ookullme, по поводу вашей ошибки (в картинке)
1 |
Yury Komar Модератор 3878 / 3200 / 482 Регистрация: 27.01.2014 Сообщений: 5,842 |
||||
14.01.2020, 17:00 |
10 |
|||
а разве таким образом можно скачать файл с облака?
0 |
ookullme 0 / 0 / 0 Регистрация: 04.01.2019 Сообщений: 59 |
||||
14.01.2020, 20:34 [ТС] |
11 |
|||
Он качает, да) Добавлено через 39 минут
ookullme, Когда то в свое время я делал такую штуку возьмите и используйте как основу Странно, почему-то не открывает взял вот так:
Добавлено через 1 час 36 минут
0 |
Модератор 3878 / 3200 / 482 Регистрация: 27.01.2014 Сообщений: 5,842 |
|
15.01.2020, 03:40 |
12 |
ookullme, да это не Excel файл вы скачиваете, а HTML код страницы Яндекс.Диск’а… Откройте файл в блокноте и увидите сами.
0 |
0 / 0 / 0 Регистрация: 04.01.2019 Сообщений: 59 |
|
15.01.2020, 07:31 [ТС] |
13 |
То, что я выше написал ( 11 пост) происходит при попытке запуска файла с пк (без скачивания)
0 |
Pavel55 971 / 353 / 135 Регистрация: 27.10.2006 Сообщений: 764 |
||||||||
15.01.2020, 12:24 |
14 |
|||||||
Сообщение было отмечено ookullme как решение Решениеookullme, попробуйте добавить эту строку в конце
чтобы получилось так
1 |
0 / 0 / 0 Регистрация: 04.01.2019 Сообщений: 59 |
|
15.01.2020, 12:43 [ТС] |
15 |
ookullme, попробуйте добавить эту строку в конце Большое спасибо
0 |
Как сделать кнопку в Excel? Войдите в раздел «Разработчик», откройте меню «Вставить», выберите изображение и назначьте макрос, гиперссылку, переход на другой лист или иную функцию. Ниже подробно рассмотрим все способы создания клавиш в Эксель, а также приведем функции, которые им можно присвоить.
Как создать кнопку: базовые варианты
Перед тем как сделать кнопку в Эксель, убедитесь в наличии режима разработчика. Если такой вкладки нет, сделайте следующие шаги:
- Жмите по ленте правой клавишей мышки (ПКМ).
- В появившемся меню кликните на пункт «Настройка ленты …».
- В окне «Настроить ленту» поставьте флажок возле «Разработчик».
- Кликните «ОК».
После того, как сделана подготовительная работа, можно вставить кнопку в Excel. Для этого можно использовать один из рассмотренных ниже способов.
Через ActiveX
Основной способ, как создать кнопку в Excel — сделать это через ActiveX. Следуйте такому алгоритму:
- Войдите в раздел «Разработчик».
- Жмите на кнопку «Вставить».
- В появившемся меню выберите интересующий элемент ActiveX.
- Нарисуйте его нужного размера.
Через элемент управления
Второй вариант — создание кнопки в Excel через элемент управления. Алгоритм действий такой:
- Перейдите в «Разработчик».
- Откройте панель «Вставить».
- Выберите интересующий рисунок в разделе «Элемент управления формы».
- Нарисуйте нужный элемент.
- Назначьте макрос или другую функцию.
Через раздел фигур
Следующий способ, как добавить кнопку в Excel на лист — сделать это с помощью раздела «Фигуры». Алгоритм действий такой:
- Перейдите в раздел «Вставка».
- Войдите в меню «Иллюстрации», где выберите оптимальную фигуру.
- Нарисуйте изображение необходимой формы и размера.
- Кликните ПКМ по готовой фигуре и измените оформление.
В качестве рисунка
Вставка кнопки Excel доступна также в виде рисунка. Для достижения результата пройдите такие шаги:
- Перейдите во вкладку «Вставка».
- Кликните в категорию «Иллюстрации».
- Выберите «Рисунок».
- Определитесь с типом клавиши, который предлагается программой.
Какие кнопки можно создать
В Excel возможно добавление кнопки двух видов:
- Command Button — срабатывает путем нажатия, запускает определенное действие (указывается индивидуально). Является наиболее востребованным вариантом и может играть роль ссылки на страницу, таблицу, ячейку и т. д.
- Toggle Button — играет роль переключателя / выключателя. Может нести определенные сведения и скрывать в себе два параметра — Faste и True. Это соответствует двум состояниям — нажато и отжато.
Также перед тем как поставить кнопку в Эксель, нужно определиться с ее назначением. От этого напрямую зависят дальнейшие шаги. Рассмотрим разные варианты.
Макрос
Часто бывают ситуации, когда необходимо создать кнопку макроса в Excel, чтобы она выполняла определенные задачи. В обычном режиме для запуска нужно каждый раз переходить в раздел разработчика, что требует потери времени. Проще создать рабочую клавишу и нажимать ее по мере неободимости.
Если вы решили сделать клавишу с помощью ActiveX, алгоритм будет таким:
- Войдите в «Режим конструктора».
- Кликните дважды по ней.
- В режиме Visual Basic между двумя строками впишите команду, необходимую для вызова макроса., к примеру, Call Макрос1.
- Установите назначение для остальных графических объектов, если они есть.
Зная, как назначить кнопку в Excel, вы легко справитесь с задачей. Но можно сделать еще проще — жмите на рисунок ПКМ и в списке внизу перейдите в раздел «Назначить макрос». Здесь уже задайте интересующую команду.
Переход на другой лист / ячейку / документ
При желании можно сделать кнопку в Excel, которая будет отправлять к другому документу, ячейке или листу. Для этого сделайте следующее:
- Подготовьте клавишу по схеме, которая рассмотрена выше.
- Выделите ее.
- На вкладке «Вставка» отыщите «Гиперссылка».
- Выберите подходящий вариант. Это может быть файл, веб-страница, e-mail, новый документ или другое место.
- Укажите путь.
Рассмотренный метод не требует указания макросов и предоставляет расширенные возможности. При желании можно также использовать и макросы.
Существует и другой способ, как сделать кнопку в Excel для перехода к определенному листу. Алгоритм такой:
- Создайте рисунок по рассмотренной выше схеме.
- В окне «Назначить макрос» введите имя макроса, а после жмите на клавишу входа в диалоговое окно Microsoft Visual Basic.
- Вставьте код для перехода к другому листу — ThisWorkbook.Sheets(«Sheet1»).Activate. Здесь вместо Sheet1 укажите путь к листу с учетом запроса.
- Сохраните код и закройте окно.
Сортировка таблиц
При желании можно сделать клавишу для сортировки таблиц Excel. Алгоритм действий такой:
- Создайте текстовую таблицу.
- Вместо заголовков добавьте автофигуры, которые в дальнейшем будут играть роль клавиш-ссылок на столбцах таблицы.
- Войдите в Visual Basic режим, где в папке Modules вставьте модуль Module1.
- Кликните ПКМ по папке и жмите на Insert Module.
- Сделайте двойной клик по Module1 и введите код.
- Назначьте каждой фигуре индивидуальный макрос.
После выполнения этих шагов достаточно нажать по заголовку, чтобы таблица сортировала данные в отношении определенного столбца.
По рассмотренным выше принципам несложно разобраться, как в Экселе сделать кнопки выбора и решения других задач. В комментариях расскажите, какой из приведенных методов вам подошел, и как проще всего самому сделать клавишу в программе.
Отличного Вам дня!
Вставка командной кнопки на рабочий лист для начинающих программировать с нуля. Кнопки из коллекций «Элементы управления формы» и «Элементы ActiveX».
Начинаем программировать с нуля
Часть 3. Первая кнопка
[Часть 1] [Часть 2] [Часть 3] [Часть 4]
Добавление вкладки «Разработчик»
Вкладка с инструментами, связанными с VBA Excel, называется «Разработчик». Если этой вкладки нет на вашей ленте, добавьте ее через окно «Параметры»:
Порядок действий:
- Откройте окно «Параметры» через меню «Файл».
- Выберите вкладку «Настроить ленту».
- В правой колонке установите галочку у пункта «Разработчик» и нажмите «OK».
Кнопка – элемент управления формы
Вставка кнопки на лист
- Выберите вкладку «Разработчик» и нажмите на кнопку «Вставить».
- Нажмите на значок кнопки в коллекции «Элементы управления формы».
- Кликните в любом месте на рабочем листе Excel.
- Откроется окно «Назначить макрос объекту». Нажмите «Отмена», так как макрос для этой кнопки еще не готов.
- После нажатия кнопки «Отмена», на рабочем листе появится новая кнопка из коллекции «Элементы управления формы» в режиме редактирования.
Ухватив мышкой за один из кружочков, можно изменить размер кнопки. Ухватив кнопку за границу, можно перетащить ее в другое место. Также, в режиме редактирования, можно изменить название кнопки прямо на ее поверхности.
Чтобы выйти из режима редактирования кнопки из коллекции «Элементы управления формы», кликните в любом месте на рабочем листе.
Чтобы вернуться в режим редактирования кнопки, кликните по ней правой кнопкой мыши и выберите из контекстного меню нужный пункт. Если вы хотите изменить размер или размещение кнопки перетаскиванием, кликните левой кнопкой мыши в любом месте рабочего листа. После первого клика контекстное меню закроется, а кнопка останется в режиме редактирования.
Создание процедуры для кнопки
Кнопке из коллекции «Элементы управления формы» можно назначить макрос (процедуру), размещенную в стандартном программном модуле.
Создайте или откройте файл Excel с расширением .xlsm (Книга Excel с поддержкой макросов) и перейдите в редактор VBA, нажав сочетание клавиш «Левая_клавиша_Alt+F11».
Если вы не создавали ранее в этом проекте VBA стандартный программный модуль, нажмите кнопку «Module» во вкладке «Insert» главного меню. То же подменю откроется при нажатии на вторую кнопку (после значка Excel) на панели инструментов.
Ссылка на модуль появится в проводнике слева. Если модуль создан ранее, дважды кликните по его ссылке в проводнике, и он откроется справа для редактирования.
Нажмите кнопку «Procedure…» во вкладке «Insert» главного меню. Та же ссылка будет доступна при нажатии на вторую кнопку после значка Excel на панели инструментов.
В открывшемся окне добавления шаблона процедуры оставьте выбранным переключатель «Sub», вставьте в поле «Name» название процедуры «NovayaProtsedura» и нажмите «OK».
В стандартный программный модуль будет вставлен шаблон процедуры «NovayaProtsedura».
Вставьте внутрь шаблона процедуры следующий код:
‘Записываем в ячейку A1 число 44 Cells(1, 1) = 44 ‘Записываем в ячейку B1 число 56 Cells(1, 2) = 56 ‘Записываем в ячейку C1 формулу, которая ‘вычисляет сумму значений ячеек A1 и B1 Cells(1, 3) = «=A1+B1» |
На этом процедура (подпрограмма, макрос) для кнопки готова.
Назначение макроса кнопке
Кликните правой кнопкой мыши по кнопке на рабочем листе и в контекстном меню выберите строку «Назначить макрос…», откроется окно «Назначить макрос объекту».
Выберите в списке процедуру «NovayaProtsedura» и нажмите «OK». Кликните левой кнопкой мыши по рабочему листу, чтобы командная кнопка вышла из режима редактирования.
Теперь можете нажать созданную кнопку из коллекции «Элементы управления формы» для проверки ее работоспособности.
Кнопка – элемент ActiveX
Вставка кнопки на лист
- Выберите вкладку «Разработчик» и нажмите на кнопку «Вставить».
- Нажмите на значок кнопки в коллекции «Элементы ActiveX».
- Кликните по рабочему листу и кнопка из коллекции «Элементы ActiveX» появится рядом с курсором.
- Автоматически включится режим редактирования, включение и отключение которого осуществляется кнопкой «Режим конструктора».
Ухватив кнопку за кружок, можно изменить ее размер, а ухватив за границу – перетащить на другое место. Чтобы отредактировать наименование кнопки, нужно кликнуть на ней правой кнопкой мыши и в контекстном меню выбрать «Объект CommandButton» > «Edit».
Добавление процедуры
Кликните дважды по кнопке из коллекции «Элементы ActiveX» левой кнопкой мыши в режиме конструктора. Это приведет к открытию модуля листа, на который вставлена кнопка, и записи шаблона процедуры «CommandButton1_Click».
Вставьте внутрь шаблона процедуры код, который будет очищать ячейки A1, B1 и C1:
Перейдите на рабочий лист и, если кнопка «Режим конструктора» затемнена, нажмите на нее, чтобы выйти из режима редактирования. После этого нажмите кнопку «CommandButton1», и она очистит ячейки, заполненные ранее нажатием кнопки «Кнопка 1».
Теперь кнопка из коллекции «Элементы управления формы» (Кнопка 1) будет заполнять ячейки диапазона «A1:C1», а кнопка из коллекции «Элементы ActiveX» (CommandButton1) очищать их.
«Excel» (Word) VBA кнопки.
Наверняка Вам доводилось встречать файлы «Excel» (Word) с размещенными на листах различными кнопками, по нажатию на которые происходит запуск макроса или иные действия.
Хотите узнать, как размещать кнопки на листах Excel(Word)? Тогда читайте статью дальше.
Рассмотрим 2 типа кнопок:
Самая обычная кнопка, называемая CommandButton- эта кнопка нажимается кликом и запускает какое-либо действие, записанное за ней.
Вторая кнопка называется ToggleButton и является выключателем или переключателем. Она может не только запускать действия, но и сама может нести в себе информацию – обладать двумя значениями: False и true, что соответствует ее состоянию нажата или отжата.
CommandButton выглядит так:
ToggleButton выглядит так:
Процесс добавления кнопок на лист Excel (Word):
- Если у Вас в ленте не включена панель «Разработчик», ее нужно включить следующим образом:
- Кликнуть по ленте правой кнопкой мыши и в выпадающем контекстном меню выбрать пункт «Настройка ленты…»
Настройка ленты - В появившемся окне на вкладке «Настроить ленту» установить флажок («галочку») напротив пункта «Разработчик»
Настройка ленты. Разработчик - Нажать кнопку «Ок»
- Кликнуть по ленте правой кнопкой мыши и в выпадающем контекстном меню выбрать пункт «Настройка ленты…»
- Когда на панели появилась вкладка разработчик, перейдите на нее и нажмите кнопку «Режим конструктора».
Режим конструктора Excel - При включённом режиме конструктора становиться активной кнопка с инструментами. Кликнув по кнопке с инструментами можно выбрать понравившейса Вам активный элемент: CommandButton или ToggleButton .
Инструменты в режиме конструктора - Когда элемент выбран, удерживая нажатой левую кнопку мыши, выделите область на листе, в которую Вы хотите поместить этот элемент.
- Кнопка появиться в указанной области.
В режиме конструктора свойства кнопки можно менять и перемещать ее по листу. Вне режима конструктора кнопка просто выполняет свою функцию – нажимается.
Внимание: Если У вас не получается выделить кнопку на листе Excel, включите режим конструктора.
Основные свойства кнопок:
CommandButton:
BackColor – цвет фона кнопки.
Caption – Надпись на кнопке.
Enabled – состояние кнопки включена или отключена (активна или неактивна).
Font – шрифт надписи на кнопке.
ForeColor – Цвет надписи на кнопке.
Height — высота кнопки.
Width – ширина кнопки.
Picture – изображение на поверхности кнопки.
WordWrap – перенос текста кнопки.
ToggleButton:
Свойства практически те же что и у CommandButton, добавляются параметры:
Value – это значение кнопки False и true, нажата или отжата.
TripleState – включает или отключает тройное нажатие (три состояния переключателя)
Кнопка в Excel как ссылка на ячейку, какой-либо инструмент, созданный макрос значительно упрощает работу в программе. Чаще всего это графический объект с назначенным макросом или гиперссылкой. Рассмотрим, как сделать такую кнопку.
Как сделать кнопку на листе Excel
Суть работы: создать графический объект и назначить для него макрос или гиперссылку. Рассмотрим подробнее.
Способы создания графического объекта:
- Кнопка – элемент ActiveX. Переходим на вкладку «Разработчик». Нажимаем кнопку «Вставить». Открывается меню с набором элементов для вставки. Выбираем первый элемент ActiveX – «кнопку» (в виде серого кирпичика). Теперь рисуем курсором кнопку необходимого размера.
- Кнопка – элемент управления формы. Снова переходим на вкладку «Разработчик». Открываем меню инструмента «Вставить». Теперь выбираем элемент «кнопка» из первой группы (такой же серый кирпичик). Рисуем кнопку. Сразу открывается окно для назначения макроса: можно сделать сразу, а можно попозже.
- Кнопка – автофигура. Переходим на вкладку «Вставка». В меню «Иллюстрации» выбираем подходящую фигуру. Рисуем. По готовой фигуре можно щелкнуть правой кнопкой мыши и изменить оформление.
- Кнопка – рисунок. Переходим на вкладку «Вставка». В меню «Иллюстрации» выбираем инструмент «Рисунок». Для выбора будут предложены варианты, которые имеются на компьютере.
Графический объект создан. Теперь нужно сделать его «рабочим».
Как в Excel сделать кнопку с макросом
К примеру, написали макрос для выполнения определенной задачи. Чтобы запускать его, нужно каждый раз заходить в меню «Разработчик». Что неудобно. Гораздо проще создать «рабочую» кнопку.
Если мы использовали элемент ActiveX, то:
Для других графических объектов макрос назначается так же. Процедура еще проще. Нужно щелкнуть правой кнопкой мыши по нарисованной кнопке или картинке и выбрать инструмент «Назначить макрос».
Другие варианты использования кнопок
С помощью кнопок в Excel можно не только выполнять созданные макросы, но и переходить в определенную ячейку, другой документ, на другой лист. Рассмотрим подробнее.
Нарисуем графический объект и выделим его. На вкладке «Вставка» найдем кнопку «Гиперссылка».
После нажатия открывается окно для создания связи кнопки с файлом, веб-страницей, электронной почтой, новым документом, местом в текущем документе.
Достаточно выбрать необходимый вариант и прописать к нему путь. Этот способ не требует написания макросов и предоставляет пользователю широкие возможности.
Подобные задачи можно выполнять и с помощью макросов. Например, чтобы при нажатии, пользователь попадал в определенную ячейку (М6), прописываем следующий код:
Sub Макрос 1()
Range(«M6»).Select
End Sub
Точно так же можно назначить макрос диаграмме, объектам WordArt, SmartAtr.
Как сделать кнопку сортировки в Excel для таблиц
Для показательного примера создайте тестовую таблицу как на рисунке:
- Вместо заголовков колонки таблицы добавим автофигуры, которые будут служить кнопками для сортировки по столбцам таблицы.
- В режиме Visual Basic — ALT+F11 в папке Modules вставляем новый модуль Module1. Для этого делаем по папке правый щелчок мышкой и выбираем: Insert-Module.
- Делаем двойной щелчок по Module1 и вводим в него следующий код:
- Назначаем каждой автофигуре свой макрос: для «Наименование» – Макрос1, а для «Май» – Макрос2 и т.д.
Sub Макрос1()
ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Clear
ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Add Key:=Range(«A2:A6«), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets(«Лист1»).Sort
.SetRange Range(«A2:D6»)
.Apply
End With
End Sub
‘————————————————
Sub Макрос2()
ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Clear
ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Add Key:=Range(«B2:B6«), _
SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets(«Лист1»).Sort
.SetRange Range(«A2:D6»)
.Apply
End With
End Sub
‘————————————————
Sub Макрос3(
)
ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Clear
ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Add Key:=Range(«C2:C6«), _
SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets(«Лист1»).Sort
.SetRange Range(«A2:D6»)
.Apply
End With
End Sub
‘————————————————
Sub Макрос4()
ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Clear
ActiveWorkbook.Worksheets(«Лист1»).Sort.SortFields.Add Key:=Range(«D2:D6«), _
SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets(«Лист1»).Sort
.SetRange Range(«A2:D6»)
.Apply
End With
End Sub
Примечание. Красным текстом отмечены отличающиеся параметры для каждого столбца.
Все теперь достаточно только кликнуть по заголовку и таблица отсортирует данные относительно определенного столбца. Для удобства столбец «Наименование» Макрос1 сортирует по возрастанию благодаря параметру Order:=xlAscending. Во всех остальных столбцах присвоены макросы (2,3,4) с параметром Order:=xlDescending, который задает тип сортировки по убыванию. Чтобы видно было, в каком месяце было больше продано товара.
Скачать пример кнопки сортировки
Примечание. Такие простые макросы можно создать в автоматическом режиме без программирования или без написания VBA-кода, с помощью инструмента «Запись макроса».