Найти тему
VBA Excel с нуля

VBA Excel № 176. Использование внешних элементов управления: Как добавить ActiveX Windows Media Player на форму UserForm

Оглавление
Скриншот с моего ноутбука
Скриншот с моего ноутбука

В этой статье рассматрим использование внешнего элемента управления ActiveX Windows Media Player в Microsoft Excel. Этот элемент управления не является частью встроенных инструментов Excel, но при установке операционной системы Windows становится доступным и может интегрироваться с формами UserForm. Давайте рассмотрим процесс добавления этого элемента в проект и его настройку.

Шаг 1: Активация редактора VBA (VBE)

Чтобы начать работу, нужно открыть VBA Editor (VBE), который является основным инструментом для программирования и настройки макросов в Excel:

1. Откройте Excel и нажмите сочетание клавиш Alt + F11 для перехода в редактор VBE.

2. В редакторе откроется окно с проектом и различными элементами для настройки макросов.

Шаг 2: Добавление дополнительных элементов управления

После открытия VBE, вам нужно добавить элемент ActiveX Windows Media Player в панель инструментов Toolbox:

  • Щелкните правой кнопкой мыши по панели Toolbox (если она скрыта, выберите в меню View пункт Toolbox).
  • В открывшемся меню выберите Additional Controls (Дополнительные элементы управления).
Скриншот с моего ноутбука
Скриншот с моего ноутбука
  • В появившемся окне отметьте флажок рядом с Windows Media Player.
Скриншот с моего ноутбука
Скриншот с моего ноутбука
  • Нажмите ОК. Теперь элемент Windows Media Player появится в вашем Toolbox.
Скриншот с моего ноутбука
Скриншот с моего ноутбука

Шаг 3: Предупреждение при открытии файла

При открытии файла, содержащего элементы управления ActiveX, Excel может выдать предупреждение о возможных рисках использования этих элементов:

«Это приложение собирается инициализировать элементы управления ActiveX, которые могут быть небезопасными. Если вы доверяете источнику этого файла, нажмите OK, и элементы управления будут инициализированы с использованием текущих настроек рабочей области.»

Скриншот с моего ноутбука
Скриншот с моего ноутбука

После нажатия ОК, элементы управления будут инициализированы и готовы к использованию. Важно убедиться, что вы доверяете источнику файла, поскольку ActiveX может использоваться для выполнения потенциально небезопасных операций.

Шаг 4: Свойства элемента управления Windows Media Player

После добавления элемента управления Windows Media Player на форму UserForm, можно настроить его свойства. Основное свойство — это URL, которое определяет путь к файлу, который будет воспроизводиться. Это может быть, как аудиофайл, так и видеоролик. Если файл находится на вашем компьютере, необходимо указать полный путь к файлу, например: > "C:\Music\example.mp3"

Пример интерфейса с использованием Windows Media Player

Скриншот с моего ноутбука
Скриншот с моего ноутбука

На скриншоте (представлен выше) показан пример использования элемента управления Windows Media Player, встроенного в UserForm. Обратите внимание на следующие особенности:

  1. В целях сокрытия окна видеоэлемента высота окна Windows Media Player была уменьшена, чтобы воспроизводить только аудиофайлы.
  2. Добавлен список файлов ListBox, в котором отображаются аудиофайлы MP3.
  3. Нажатие на кнопку Воспроизведение начинает проигрывание выбранного файла.
  4. Нажатие на кнопку Закрыть останавливает воспроизведение и закрывает UserForm.
Форма является немодальной, что означает возможность продолжения работы в Excel, пока открыто диалоговое окно с проигрывателем.

Код программы для работы с аудиофайлами

Пример, приведенный ниже, показывает базовую логику работы с аудиофайлами, находящимися в той же папке, что и книга Excel. Поместите этот файл в папку со своей музыкой с расширением "*.mp3",

Можно реализовать и более сложные сценарии, например, позволить пользователю выбирать папку для поиска аудиофайлов.

Инициализация списка MP3-файлов

Скриншот с моего ноутбука
Скриншот с моего ноутбука

Этот код выполняется при инициализации формы. Он проходит по всем MP3-файлам в директории, где находится рабочая книга, и добавляет их в список ListBox.

Обработка нажатия на кнопку «Воспроизведение»

Скриншот с моего ноутбука
Скриншот с моего ноутбука

Этот обработчик событий реагирует на нажатие кнопки Воспроизведение. Он присваивает свойству URL объекта WindowsMediaPlayer путь к выбранному файлу из списка, что запускает его воспроизведение.

Обработка двойного щелчка на элементе списка

Скриншот с моего ноутбука
Скриншот с моего ноутбука

Этот код позволяет начать воспроизведение музыки при двойном щелчке на его названии в списке ListBox.

Обработка нажатия на кнопку «Закрыть»

Скриншот с моего ноутбука
Скриншот с моего ноутбука

Код закрывает форму UserForm при нажатии на кнопку Закрыть.

Возможные улучшения

Этот пример несложен, но его можно улучшить:

  1. Реализовать выбор папки для аудиофайлов вместо жесткого ограничения на файлы, находящиеся в одной папке с книгой.
  2. Добавить возможность управления другими свойствами проигрывателя.
  3. Обработка ошибок — предусмотреть реакции на отсутствие файлов, неверный формат или другие возможные сбои.

Скриншот с моего ноутбука
Скриншот с моего ноутбука

Вот так это выглядит на видео:

✔ СКАЧАТЬ ФАЙЛ Excel ПРИМЕР

✔На моём телеграмм-канале появился анонс на следующую статью «Анимация элемента управления Label», которая выйдет в четверг 19.09.2024 с НОВЫМ Excel ФАЙЛ-ПРИМЕРОМ. Скачать его уже сейчас можно уже сейчас. Там же есть ВИДЕО о работе продукта.