Рассмотрим один из возможных вариантов добавления видеофайла в Excel.
Элементы управления ActiveX
Необходимо вставить некоторые элементы управления ActiveX, поэтому нужно будет включить вкладку “Разработчик”, если вы еще не сделали этого (подробнее о том, как включить вкладку “Разработчик”).
Необходимые элементы управления
Я собираюсь использовать элемент управления Windows Media Player, а также командную кнопку, которую можно нажать для перехода к следующему аудио/видео файлу.
Чтобы вставить их, на вкладке “Разработчик” нажмите “Вставить”, затем “Другие элементы управления”. Во всплывающем окне прокрутите вниз до Windows Media Player, выберите его и нажмите OK.
Теперь вы увидите, что указатель мыши изменился на крестик. Щелкните на листе и перетащите крестик до нужного размера проигрывателя.
Использование командной кнопки позволит нам щелкнуть по ней и загрузить следующий аудио/видеофайл. Для добавления кнопки, нажмите “Вставить”, щелкните на кнопку в разделе ActiveX и перетащите ее в нужное место.
Редактирование свойств элемента управления
По умолчанию имя и текст на кнопке CommandButton1, я хочу изменить это. Сначала убедитесь, что вы находитесь в режиме конструктора.
На вкладке “Разработчик” “Режим конструктора” должен быть выделен цветом/подсвечен. В этом случае элементы управления не будут выполнять свои обычные функции.
Щелкните правой кнопкой мыши по добавленному элементу “Кнопка” и выберите пункт “Свойства”. В окне свойств я изменил надпись на “Следующее видео” и изменил имя кнопки на “nextVideo”. Мы используем это имя в нашем коде VBA, поэтому важно, чтобы оно было осмысленным.
Загрузка медиафайлов в проигрыватель
Мы вернемся к VBA, который загружает медиафайлы, через секунду, сначала я хочу рассмотреть, как мы узнаем, что воспроизводить.
Я использовал определенную ячейку A3, чтобы указать папку, в которой находятся файлы, а под ней – список файлов, которые я хочу воспроизвести.
Обратите внимание, что имя файла должно включать расширение.
Вы можете создать список воспроизведения в Windows Media Player и загрузить его, и он будет воспроизводить все, что находится в списке воспроизведения.
VBA
Мы хотим нажать командную кнопку “Следующее видео”, чтобы загрузить следующий файл, поэтому для этого нам понадобится немного VBA.
Убедитесь, что вы находитесь в режиме конструктора, и щелкните правой кнопкой мыши по кнопке. Нажмите “Просмотр кода”, и откроется редактор VBA с уже созданным пустым подзаголовком.
Обратите внимание, что название подпункта взято из названия, которое мы дали кнопке. Теперь вам нужно просто ввести код, чтобы кнопка воспроизводила следующее видео.
Private Sub nextVideo_Click()
Dim folder, startCell As String
ActiveCell.Offset(1, 0).Select
startCell = "A4"
folder = Range(startCell).Offset(-1, 0).Value
If Len(ActiveCell.Value) = 0 Then Range(startCell).Select
WindowsMediaPlayer1.Url = folder & Application.PathSeparator & ActiveCell.Value
End Sub
В результате получится примерно следующее.
Как работает макрос
При каждом нажатии на кнопку ActiveCell перемещается вниз на одну строку.
Код использует ActiveCell для загрузки следующего файла. Если эта ячейка пуста, она снова переходит к началу, ячейке A4.
Файл, указанный в ячейке ActiveCell, загружается в медиаплеер.
Код исходит из того, что на листе больше ничего нет, поэтому если у вас выбрана ячейка F34, то в ней ничего не будет. В этом случае код вернется к началу медиафайлов и воспроизведет первый из них.
Файл для скачивания: