Создание гиперссылки в VBA Excel методом Hyperlinks.Add для перехода на другой лист, на интернет-сайт, для открытия любого файла в программе по умолчанию.
Hyperlinks.Add — это метод, который добавляет новую гиперссылку к указанному объекту Range (диапазону, ячейке) или объекту Shape (фигуре).
Синтаксис
Expression.Add (Anchor, Address, SubAddress, ScreenTip, TextToDisplay) |
Expression — выражение (переменная), возвращающее объект Hyperlinks.
Параметры
Параметр | Описание |
---|---|
Anchor | Объект Range или объект Shape, к которому привязывается (добавляется) новая гиперссылка. Обязательный параметр. Тип данных — Object. |
Address | Адрес гиперссылки. Обязательный параметр. Тип данных — String. |
SubAddress | Субадрес гиперссылки. Необязательный параметр. Тип данных — Variant. |
ScreenTip | Всплывающая подсказка, отображаемая при наведении указателя мыши на текст гиперссылки. Необязательный параметр. Тип данных — Variant. |
TextToDisplay | Текст гиперссылки. Необязательный параметр. Тип данных — Variant. |
Если текст гиперссылки (TextToDisplay) не указан, будет отображен текст параметров Address и SubAddress.
Создание гиперссылки на рабочий лист другой книги:
ActiveSheet.Hyperlinks.Add Anchor:=Range(«A4»), Address:=«C:UsersEvgeniyDesktopКнига2.xlsx», _ SubAddress:=«Лист3!D5», ScreenTip:=«Гиперссылка на Лист3!D5 в Книга2», TextToDisplay:=«Книга2 — Лист3!D5» |
Создание гиперссылки на другой лист текущей книги:
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:=«», _ SubAddress:=«Лист4!D6», TextToDisplay:=«Эта книга — Лист4!D6» |
Создание гиперссылки на другую ячейку того же листа:
Worksheets(«Лист1»).Hyperlinks.Add Anchor:=Range(«A1»), Address:=«», _ SubAddress:=«Лист1!D6», TextToDisplay:=«Перейти к D6» |
Создание гиперссылки на документ Word:
ActiveSheet.Hyperlinks.Add Anchor:=Range(«A1»), Address:=«C:UsersEvgeniyDocumentsДокумент 1.docx», _ TextToDisplay:=«Ссылка на Документ 1» |
Создание гиперссылки на точечный рисунок:
ActiveSheet.Hyperlinks.Add Anchor:=Range(«A1»), Address:=«C:UsersEvgeniyDocumentsРисунок 1.bmp», _ TextToDisplay:=«Ссылка на Рисунок 1» |
Пример добавления гиперссылки на рубрику «VBA Excel» сайта «Время не ждёт»:
ActiveSheet.Hyperlinks.Add Anchor:=Range(«A1»), Address:=«https://vremya-ne-zhdet.ru/category/vba-excel/», _ TextToDisplay:=«Рубрика VBA Excel» |
Поиск первой ячейки с гиперссылкой в заданном диапазоне:
Sub Primer() Dim myRange As Range, n As Integer, i As Integer, s As String ‘Задаем диапазон поиска Set myRange = Range(«A1:G10») ‘Вычисляем количество ячеек в заданном диапазоне n = myRange.Cells.Count ‘Ищем первую ячейку с гиперссылкой For i = 1 To n If myRange.Cells(i).Hyperlinks.Count > 0 Then s = myRange.Cells(i).Address Exit For End If Next MsgBox s End Sub |
Для поиска последней ячейки с гиперссылкой в заданном диапазоне следует заменить строку
For i = 1 To n
на
For i = n To 1 Step -1
.
Макрокод может быть очень полезным для нас при решении некоторых сложных задач в Excel, обычно мы можем выполнить его в Microsoft Visual Basic для приложений окно, нажав Run или нажатие F5 ключ. Но пробовали ли вы когда-нибудь запускать макросы, щелкая относительные гиперссылки на листе?
Запустите или выполните макрос, щелкнув гиперссылку с кодом VBA
Запустите или выполните макрос, щелкнув гиперссылку с кодом VBA
Нам может быть интересно запустить макрос, щелкнув гиперссылку в Excel, следующий метод может помочь вам выполнить эту задачу шаг за шагом:
1. Создайте гиперссылки, которые вы хотите использовать для выполнения кодов макросов. Щелкните ячейку и создайте гиперссылку для ссылки на себя, см. Снимок экрана:
2. Повторите вышеуказанный шаг, чтобы создать другие гиперссылки, которые вы хотите использовать, как показано на следующем снимке экрана:
3. Затем щелкните правой кнопкой мыши вкладку листа, содержащую гиперссылки, которые вы хотите использовать, и выберите Просмотреть код из контекстного меню, а в открывшемся Microsoft Visual Basic для приложений окна, скопируйте и вставьте следующий код в пустой модуль:
Код VBA: запускать коды макросов из гиперссылок:
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
If Target.Range.Address = "$B$6" Then
Call Macro1
End If
If Target.Range.Address = "$B$8" Then
Call Macro2
End If
End Sub
Внимание: В приведенном выше коде B6 и B8 содержат ли ячейки гиперссылки, которые вы хотите использовать, и Macro1 и Macro2 являются кодовыми названиями макросов, измените их по своему усмотрению.
4. Затем сохраните и закройте окно кода, с этого момента, когда вы щелкаете гиперссылку, конкретный код макроса будет выполняться сразу.
Статьи по теме:
Как запустить макрос при изменении значения ячейки в Excel?
Как запустить макрос на основе значения ячейки в Excel?
Как запустить макрос на основе значения, выбранного из раскрывающегося списка в Excel?
Как запустить макрос автоматически перед печатью в Excel?
Как запустить макрос, когда лист выбран из книги?
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Комментарии (5)
Оценок пока нет. Оцените первым!
Хитрости »
31 Январь 2013 17456 просмотров
Как сделать гиперссылку на процедуру?
В своих статьях я часто прикладываю примеры с кодами. Т.к. мой сайт ориентирован как на знающих программирование в Visual Basic for Application(VBA), так и на начинающих, я в примерах почти всегда на первом листе делаю кнопку, по нажатию которой можно сразу же перейти в редактор VBA на нужный код без каких-либо лишних телодвижений. Как-то меня уже просили разъяснить каким способом я это делаю. Вот сегодня на одном из форумов попросили в очередной раз, что и побудило меня сесть и написать эту статью. Итак, к сути.
На самом деле это не так уж и сложно. Для начала необходимо создать хоть какой-то код(макрос) внутри книги(предполагается, что это вы умеете уже. Если нет — статья в помощь). Предположим, что наш макрос расположен в модуле Module1 и называется он Макрос1. Теперь создадим кнопку для вызова этого макроса, если необходимо. А после этого создадим еще одну кнопку(я использую для этих целей автофигуры), по нажатию на которую мы и будем попадать сразу в тело нужного нам макроса.
Способ 1:
Жмем на созданной фигуре правой кнопкой мыши. Выбираем в появившемся меню Гиперссылка:
Выбираем «Файлом, веб-страницей»(этот пункт открывается по умолчанию) и вписываем в поле Адрес:: #Module1.Макрос1
Вот и все. Наша ссылка готова.
Решетка(#) перед именем модуля указывает, что ссылка ведет на путь внутри документа. Она обязательна. После имени модуля(Module1) ставится точка, после которой указывается имя процедуры(Макрос1) или функции, на которую должна перейти гиперссылка. Никаких пробелов или иных символов быть не должно.
С прочими возможностями гиперссылок и методах из создания можно ознакомиться в статье: Что такое гиперссылка?
Способ 2:
Этот способ кажется мне более «замороченным» и не эстетичным. Я его практически не использую. Создаем еще одну процедуру(можно в отдельном модуле), в которой и прописываем переход в нужный модуль и в нужную процедуру:
Sub GoTo_Sub() Application.Goto "Module1.Макрос1" End Sub
А созданной кнопке назначаем выполнение именно этого макроса — GoTo_Sub. Главный недостаток этого метода в том, что придется для каждой процедуры либо создавать новую процедуру с переходом, либо действовать через всевозможные конструкции типа If...Then, Select Case
, что не очень удобно. Но данный метод может быть использован и в других целях. Например, для перехода в конкретную процедуру при возникновении ошибки в другой процедуре.
Также см.:
Что такое гиперссылка?
Что такое макрос и где его искать?
Что такое модуль? Какие бывают модули?
Как создать кнопку для вызова макроса на листе?
Статья помогла? Поделись ссылкой с друзьями!
Видеоуроки
Поиск по меткам
Access
apple watch
Multex
Power Query и Power BI
VBA управление кодами
Бесплатные надстройки
Дата и время
Записки
ИП
Надстройки
Печать
Политика Конфиденциальности
Почта
Программы
Работа с приложениями
Разработка приложений
Росстат
Тренинги и вебинары
Финансовые
Форматирование
Функции Excel
акции MulTEx
ссылки
статистика
Содержание
- Способ 1: Копирование ссылки через браузер
- Способ 2: Использование инструмента «Ссылка»
- Способ 3: Создание макроса для быстрой активации ссылок
- Вопросы и ответы
Способ 1: Копирование ссылки через браузер
Редактировать ссылку не придется, если изначально знать, как правильно добавить ее в Excel. При наличии возможности скопировать адрес через строку в браузере, лучше сразу же сделайте это, а затем переходите к вставке ссылки в таблицу.
Для этого можно использовать любой веб-обозреватель, активировав копирование через контекстное меню или горячую клавишу Ctrl + C.
В таблице Эксел выберите подходящую ячейку и нажмите Ctrl + V для вставки скопированной ранее ссылки. Переключитесь на любую другую ячейку, чтобы увидеть, как строка подсвечивается синим, а это значит, ссылка является активной.
Способ 2: Использование инструмента «Ссылка»
Использование предыдущего способа даже с целью замены уже добавленных строк — не всегда лучший вариант, особенно когда речь идет о создании нескольких активных ссылок сразу же. В этом случае более простым методом считается инструмент «Ссылка», присутствующий в рассматриваемой программе.
- Найдите строку, где строка должна быть активной ссылкой, и нажмите по ней правой кнопкой мыши.
- В появившемся контекстном меню щелкните по последней строке «Ссылка».
- В текущей ситуации потребуется выбрать вариант «файлом, веб-страницей» в блоке «Связать с:».
- Скопируйте текущий текст, если он уже является необходимой для перехода ссылкой, а затем вставьте его в поле «Адрес» и примените изменения.
- Вернитесь к таблице и убедитесь в правильности выполненных действий. Осуществите то же самое с остальными ячейками, ссылки в которых необходимо сделать активными.
- Точно так же поступите и с ячейками, где изначально вместо текста ссылки расположена обычная надпись. Вставьте в строку «Адрес» название сайта для перехода и примените новые настройки.
Способ 3: Создание макроса для быстрой активации ссылок
Пользовательский макрос, активирующий все добавленные ссылки в определенном столбце, пригодится пользователям, столкнувшимся с задачей редактирования группы ссылок, по которым не удается перейти прямо из таблицы. В этом случае потребуются инструменты разработчика, поэтому заранее активируйте их следующим образом:
- После открытия таблицы перейдите на первую вкладку «Файл».
- На панели слева выберите раздел «Параметры».
- Откройте меню «Настроить ленту».
- Отметьте маркером вкладку «Разработчик», чтобы добавить ее в ленту.
Закройте окно настроек и переходите к созданию макроса, о чем мы поговорим в инструкции ниже.
- За создание макросов в Excel отвечает отдельный модуль, для запуска которого перейдите на вкладку «Разработчик».
- Оттуда запустите «Visual Basic».
- Дважды щелкните по строке «ЭтаКнига», открывающей окно создания макроса.
- Вставьте следующее содержимое и замените «c2» и «c» в выделенной на скриншоте строке на буквы и начало столбца, где и расположены ссылки для активации.
Sub HyperSsylka()
Dim cell As Range, ra As Range: Application.ScreenUpdating = False
Set ra = Range([c2], Range("c" & Rows.Count).End(xlUp))
For Each cell In ra.Cells
If Len(cell) Then cell.Hyperlinks.Add cell, cell
Next cell
End Sub
Sub HyperSsylkaSelect()
Dim cell As Range: Application.ScreenUpdating = False
For Each cell In Selection
If Len(cell) Then cell.Hyperlinks.Add cell, cell
Next cell
End Sub - Осталось только щелкнуть «Сохранить» или использовать горячую клавишу Ctrl + S, после чего закройте средство создания макросов.
- Сейчас настройки все еще не применены, поэтому откройте окно «Макросы».
- В нем активируйте созданный нами макрос под названием «HyperSsylka».
- Вернитесь к таблице и убедитесь в том, что теперь все ссылки подсвечиваются должным образом.
Еще статьи по данной теме:
Помогла ли Вам статья?
Содержание
- VBA Excel. Метод Hyperlinks.Add (создание гиперссылки)
- Метод Hyperlinks.Add
- Синтаксис
- Параметры
- Создание гиперссылок
- Гиперссылка на другой лист
- Гиперссылка на любой файл
- Гиперссылка на интернет-сайт
- Поиск гиперссылок в диапазоне
- 12 комментариев для “VBA Excel. Метод Hyperlinks.Add (создание гиперссылки)”
- Как сделать кнопку перехода на другой лист в excel?
- Файл примера
- Скачать
- Метод гиперссылок
- Макросом
- Процедура создания
- Способ 1: автофигура
- Способ 2: стороннее изображение
- Способ 3: элемент ActiveX
- Способ 4: элементы управления формы
- Помогла ли вам эта статья?
- Способ 1. Горячие клавиши
- Способ 2. Переход мышью
- Способ 3. Оглавление
- Ссылки по теме
- Как сделать кнопку на листе Excel
- Как в Excel сделать кнопку с макросом
- Другие варианты использования кнопок
- Как сделать кнопку сортировки в Excel для таблиц
Создание гиперссылки в VBA Excel методом Hyperlinks.Add для перехода на другой лист, на интернет-сайт, для открытия любого файла в программе по умолчанию.
Метод Hyperlinks.Add
Синтаксис
Expression — выражение (переменная), возвращающее объект Hyperlinks.
Параметры
Параметр | Описание |
---|---|
Anchor | Объект Range или объект Shape, к которому привязывается (добавляется) новая гиперссылка. Обязательный параметр. Тип данных — Object. |
Address | Адрес гиперссылки. Обязательный параметр. Тип данных — String. |
SubAddress | Субадрес гиперссылки. Необязательный параметр. Тип данных — Variant. |
ScreenTip | Всплывающая подсказка, отображаемая при наведении указателя мыши на текст гиперссылки. Необязательный параметр. Тип данных — Variant. |
TextToDisplay | Текст гиперссылки. Необязательный параметр. Тип данных — Variant. |
Если текст гиперссылки (TextToDisplay) не указан, будет отображен текст параметров Address и SubAddress.
Создание гиперссылки на рабочий лист другой книги:
Создание гиперссылки на другой лист текущей книги:
Создание гиперссылки на другую ячейку того же листа:
Создание гиперссылки на документ Word:
Создание гиперссылки на точечный рисунок:
Пример добавления гиперссылки на рубрику «VBA Excel» сайта «Время не ждёт»:
Поиск первой ячейки с гиперссылкой в заданном диапазоне:
Для поиска последней ячейки с гиперссылкой в заданном диапазоне следует заменить строку
For i = 1 To n
на
For i = n To 1 Step -1 .
12 комментариев для “VBA Excel. Метод Hyperlinks.Add (создание гиперссылки)”
Здравствуйте, Евгений.
Подскажите пожалуйста, как можно определить адрес ячейки, которая содержит гиперссылку? А если ячеек с гиперссылками несколько, то как определить адрес последней (нижней правой) из них?
Здравствуйте, Юрий!
Ответ добавил в конец статьи.
Добрый день!
Скажите, пожалуйста, как сделать, чтобы в переменную Address:= вставлять не конкретный адрес, а скопированную ссылку из буфера обмена?
Заранее спасибо!
Решил проблему вот так вот:
Добрый день!
У меня в очередной раз «зачудила» книга Excell. Сама поменяла родные адреса гиперссылок в Инет во многих ячейках на один, которые понравившейся ей, меняя лишь концовку 1649, 1650, …. .
В отладчике VBA вышел на этот список подмены: Range(«L10»). Hyperlinks.Items 1.Formyla[1…5] содержащий 5 вставляемых ею адресов. В VBA не удалось добраться до этих формул.
Скажите, пожалуйста, можно ли программно восстановить стоящие ранее адреса? И как это сделать? И можно ли ей запретить так своевольничать?
Здравствуйте, Павел!
Я не знаю, как восстановить предыдущую версию файла Excel. Есть что-то у разработчиков, но это не программно.
Код, который перезаписывает гиперссылки, поищите в модулях книги и листа. Процедуры, размещенные в этих модулях, могут запускаться самостоятельно при совершении определенных событий, к которым они привязаны.
Здравствуйте, Евгений!
Спасибо за ответ. Отрицательный ответ, когда книга шибко нужна, лишь стимулирует поиск решения. Буду делать ей “костыли”, гиперссылки превращу в обычный текст и, как лучший вариант, хотел бы запускать их программно без привязки к конкретной ячейке конкретного листа конкретной книги.
Скажите, пожалуйста, есть ли возможность программно запускать гиперссылку на открытие страницы в Инете? Без привязки к конкретной ячейке.
Здравствуйте, Павел!
Открыть страницу сайта можно методом FollowHyperlink. Этот метод может не работать в старых версиях Excel.
Здравствуйте, Евгений!
Спасибо за ответ. Предложенный Вами метод работает в моей версии.
Источник
Как сделать кнопку перехода на другой лист в excel?
Поговорим сегодня про кнопки на листе, облегчающие перемещение пользователя по разделам листа. Вместо того, чтобы заставлять пользователя крутить мышиное колесо и скролиться туда-сюда, хорошо иметь специальные кнопки, которые всегда видны на экране и при помощи которых можно мгновенно переместиться в нужное место.
Файл примера
Скачать
Вместо того, чтобы использовать стандартные унылые кнопки с ленты Разработчик, хотелось бы обратить ваше внимание, что, вообще говоря, любой графический объект Excel может послужить вам кнопкой.
Это может быть фигура (группа фигур) или рисунок. Надо ли говорить, что с эстетической точки зрения стандартные кнопки тихо курят в сторонке в сравнении со своими графическими собратьями?
Для добавления фигуры или рисунка на лист воспользуйтесь меню Вставка:
После этого отредактируйте объекты по своему вкусу. Например, я добавил тень.
Я хочу, чтобы при нажатии на кнопку, к примеру, Материалы, табличный курсор вставал на ячейку B6 вне зависимости от того, где он находился до этого момента. Для этого я собираюсь использовать функционал гиперссылок.
Для вставки гиперссылки щёлкните на вашем графическом элементе правой кнопкой мыши и в контекстном меню выберите пункт Гиперссылка… В открывшемся диалоговом окне надо выбрать слева раздел Место в документе, выбрать нужный нам лист (в нашем случае он называется Гиперссылки) и ввести адрес ячейки, на которую должен встать табличный курсор (у нас B6). Нажмите OK. Протестируйте работу кнопки.
После того, как я проделаю это со всеми кнопками, вводя разные адреса ячеек, можно будет насладиться возможностью быстро перескакивать на нужные разделы нашего листа. Очень удобно. Ваши пользователи будут довольны. Однако, есть небольшая ложка дёгтя. Когда вы идёте последовательно по разделам вниз, то табличный курсор встаёт так, что не очень ясно, какой сейчас раздел текущий. Посмотрите:
Чтобы избавиться от этого эффекта можно использовать очень простой трюк на основе макросов
Макросом
Вместо того, чтобы добавлять гиперссылку можно назначить очень простой VBA обработчик события нажатия мыши на нашем графическом объекте. Если вы уже добавили гиперссылку, то удалите её через контекстное меню фигуры. Я рекомендую дать вашим фигурам какие-то более благозвучные имена. Надо выделить фигуру и через адресную строку присвоить ей новое имя:
После этого нужно в контекстном меню фигуры выбрать Назначить макрос…
В открывшемся окне Назначить макрос объекту нажать кнопку Создать:
После этого вы переноситесь в VBA редактор, где система предлагает вам написать программный код обработчика события. Когда вы проделаете вышеописанное для всех шести кнопок, то это должно выглядеть так:
Теперь можно ввести VBA код, который очень прост. Мы будем использовать метод Goto объекта Applications, который имеет 2 параметра:
Ссылку на ячейку, в которую необходимо перейти табличному курсору
Параметр, который предписывает (или нет) данной ячейке занимать в окне левый верхний угол. True или False.
Так будет выглядеть наш код для файла примера:
Вот такой простой, но полезный трюк 🙂
Excel является комплексным табличным процессором, перед которым пользователи ставят самые разнообразные задачи. Одной из таких задач является создание кнопки на листе, нажатие на которую запускало бы определенный процесс. Данная проблема вполне решаема с помощью инструментария Эксель. Давайте разберемся, какими способами можно создать подобный объект в этой программе.
Процедура создания
Как правило, подобная кнопка призвана выступать в качестве ссылки, инструмента для запуска процесса, макроса и т.п. Хотя в некоторых случаях, данный объект может являться просто геометрической фигурой, и кроме визуальных целей не нести никакой пользы. Данный вариант, впрочем, встречается довольно редко.
Способ 1: автофигура
Прежде всего, рассмотрим, как создать кнопку из набора встроенных фигур Excel.
- Производим перемещение во вкладку «Вставка». Щелкаем по значку «Фигуры», который размещен на ленте в блоке инструментов «Иллюстрации». Раскрывается список всевозможных фигур. Выбираем ту фигуру, которая, как вы считаете, подойдет более всего на роль кнопки. Например, такой фигурой может быть прямоугольник со сглаженными углами.
- После того, как произвели нажатие, перемещаем его в ту область листа (ячейку), где желаем, чтобы находилась кнопка, и двигаем границы вглубь, чтобы объект принял нужный нам размер.
- Теперь следует добавить конкретное действие. Пусть это будет переход на другой лист при нажатии на кнопку. Для этого кликаем по ней правой кнопкой мыши. В контекстном меню, которое активируется вслед за этим, выбираем позицию «Гиперссылка».
- В открывшемся окне создания гиперссылки переходим во вкладку «Местом в документе». Выбираем тот лист, который считаем нужным, и жмем на кнопку «OK».
Теперь при клике по созданному нами объекту будет осуществляться перемещение на выбранный лист документа.
Урок: Как сделать или удалить гиперссылки в Excel
Способ 2: стороннее изображение
В качестве кнопки можно также использовать сторонний рисунок.
- Находим стороннее изображение, например, в интернете, и скачиваем его себе на компьютер.
- Открываем документ Excel, в котором желаем расположить объект. Переходим во вкладку «Вставка» и кликаем по значку «Рисунок», который расположен на ленте в блоке инструментов «Иллюстрации».
- Открывается окно выбора изображения. Переходим с помощью него в ту директорию жесткого диска, где расположен рисунок, который предназначен выполнять роль кнопки. Выделяем его наименование и жмем на кнопку «Вставить» внизу окна.
- После этого изображение добавляется на плоскость рабочего листа. Как и в предыдущем случае, его можно сжать, перетягивая границы. Перемещаем рисунок в ту область, где желаем, чтобы размещался объект.
- После этого к копке можно привязать гиперссылку, таким же образом, как это было показано в предыдущем способе, а можно добавить макрос. В последнем случае кликаем правой кнопкой мыши по рисунку. В появившемся контекстном меню выбираем пункт «Назначить макрос…».
- Открывается окно управление макросами. В нем нужно выделить тот макрос, который вы желаете применять при нажатии кнопки. Этот макрос должен быть уже записан в книге. Следует выделить его наименование и нажать на кнопку «OK».
Теперь при нажатии на объект будет запускаться выбранный макрос.
Урок: Как создать макрос в Excel
Способ 3: элемент ActiveX
Наиболее функциональной кнопку получится создать в том случае, если за её первооснову брать элемент ActiveX. Посмотрим, как это делается на практике.
- Для того чтобы иметь возможность работать с элементами ActiveX, прежде всего, нужно активировать вкладку разработчика. Дело в том, что по умолчанию она отключена. Поэтому, если вы её до сих пор ещё не включили, то переходите во вкладку «Файл», а затем перемещайтесь в раздел «Параметры».
- В активировавшемся окне параметров перемещаемся в раздел «Настройка ленты». В правой части окна устанавливаем галочку около пункта «Разработчик», если она отсутствует. Далее выполняем щелчок по кнопке «OK» в нижней части окна. Теперь вкладка разработчика будет активирована в вашей версии Excel.
- После этого перемещаемся во вкладку «Разработчик». Щелкаем по кнопке «Вставить», расположенной на ленте в блоке инструментов «Элементы управления». В группе «Элементы ActiveX» кликаем по самому первому элементу, который имеет вид кнопки.
- После этого кликаем по любому месту на листе, которое считаем нужным. Сразу вслед за этим там отобразится элемент. Как и в предыдущих способах корректируем его местоположение и размеры.
- Кликаем по получившемуся элементу двойным щелчком левой кнопки мыши.
- Открывается окно редактора макросов. Сюда можно записать любой макрос, который вы хотите, чтобы исполнялся при нажатии на данный объект. Например, можно записать макрос преобразования текстового выражения в числовой формат, как на изображении ниже. После того, как макрос записан, жмем на кнопку закрытия окна в его правом верхнем углу.
Теперь макрос будет привязан к объекту.
Способ 4: элементы управления формы
Следующий способ очень похож по технологии выполнения на предыдущий вариант. Он представляет собой добавление кнопки через элемент управления формы. Для использования этого метода также требуется включение режима разработчика.
- Переходим во вкладку «Разработчик» и кликаем по знакомой нам кнопке «Вставить», размещенной на ленте в группе «Элементы управления». Открывается список. В нем нужно выбрать первый же элемент, который размещен в группе «Элементы управления формы». Данный объект визуально выглядит точно так же, как и аналогичный элемент ActiveX, о котором мы говорили чуть выше.
- Объект появляется на листе. Корректируем его размеры и место расположения, как уже не раз делали ранее.
- После этого назначаем для созданного объекта макрос, как это было показано в Способе 2 или присваиваем гиперссылку, как было описано в Способе 1.
Как видим, в Экселе создать функциональную кнопку не так сложно, как это может показаться неопытному пользователю. К тому же данную процедуру можно выполнить с помощью четырех различных способов на свое усмотрение.
Мы рады, что смогли помочь Вам в решении проблемы.
Задайте свой вопрос в комментариях, подробно расписав суть проблемы. Наши специалисты постараются ответить максимально быстро.
Помогла ли вам эта статья?
У вас бывают файлы, где много листов? Реально много — несколько десятков? Переход на нужный лист в такой книге может напрягать — пока найдешь нужный ярлычок листа, пока по нему щелкнешь…
Способ 1. Горячие клавиши
Сочетания Ctrl+PgUp и Ctrl+PgDown позволят вам быстро пролистывать вашу книгу вперед-назад.
Способ 2. Переход мышью
Просто щелкните правой кнопкой мыши по кнопкам прокрутки, находящимся слева от ярлычков листов и выберите нужный лист:
Просто и изящно. Работает во всех версиях Excel.
Способ 3. Оглавление
Это способ трудоемкий, но красивый. Суть его в том, чтобы создать специальный лист с гиперссылками, ведущими на другие листы вашей книги и использовать его как «живое» оглавление.
Вставьте в книгу пустой лист и добавьте на него гиперссылки на нужные вам листы, используя команду Вставка — Гиперссылка (Insert — Hyperlink):
Можно задать отображаемый в ячейке текст и адрес ячейки, куда приведет щелчок по ссылке.
Если листов много и не хочется делать кучу ссылок вручную, то можно воспользоваться готовым макросом создания оглавления.
Ссылки по теме
- Как создать лист-оглавление книги Excel для быстрого перехода на нужный лист
- Автоматическое создание оглавления книги на отдельном листе с гиперссылками (надстройка PLEX)
Кнопка в 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 и т.д.
Все теперь достаточно только кликнуть по заголовку и таблица отсортирует данные относительно определенного столбца. Для удобства столбец «Наименование» Макрос1 сортирует по возрастанию благодаря параметру Order:=xlAscending. Во всех остальных столбцах присвоены макросы (2,3,4) с параметром Order:=xlDescending, который задает тип сортировки по убыванию. Чтобы видно было, в каком месяце было больше продано товара.
Скачать пример кнопки сортировки
Примечание. Такие простые макросы можно создать в автоматическом режиме без программирования или без написания VBA-кода, с помощью инструмента «Запись макроса».
Источник