Макрос предназначен для показа видеороликов на форме в Microsoft Excel.
На форме UserForm расположен компонент WebBrowser, в котором открывается заданных видеоролик при запуске формы.
Вызов формы осуществляется таким кодом:
Sub ПримерПоказаВидеоНаФорме() Video$ = Range("b2") Caption$ = Range("b5") URL_1$ = Range("b3") Website$ = Range("b4") ' запускаем форму показа видео с нашим видеороликом: Show_YouTube_Video Video$, Caption$, URL_1$, Website$ End Sub
На форме для показа видео присутствуют 2 дополнительные кнопки, при помощи которых можно перейти на страницу видеоролика,
или на любую другую веб-страницу.
Для облегчения вызова формы использована функция Show_YouTube_Video:
Sub Show_YouTube_Video(ByVal VideoURL$, Optional ByVal Caption$, _ Optional ByVal URL_1$, Optional ByVal URL_2$) ' Макрос предназначен для показа видеоролика YouTube на форме VBA ' макрос в качестве параметров принимает: ' VideoURL$ - ссылка на видеоролик ' Caption$ - название видеоролика (заголовок страницы) ' URL_1$ и URL_2$ - ссылки для 2 кнопок под видео On Error Resume Next: Err.Clear res = F_Video.Visible If Err <> 0 Then MsgBox "Не найдена форма «F_video» - ошибка макроса", vbCritical, "Показ видео невозможен": Exit Sub With F_Video .Show .BrowserURL = VideoURL$: .VideoCaption = Caption$ .URL_1 = URL_1$: .URL_2 = URL_2$ .Start End With End Sub
Макрос можно использовать не только для отображения видео, но и для показа абсолютно любых веб-страниц на форме Excel.
Аналогичное решение обычно используется для взаимодействия пользователя в веб-страницей, когда необходимо в Excel загружать данные из интернета, в момент взаимодействия пользователя с сайтом (например, пользователь работает с поиском на сайте, а макрос автоматически подгружает результаты этого поиска в таблицу Excel)
Комментарии
Для вставки WebBrowser на форму, правой кнопкой щелкните по Toolbox (где у вас список значков доступных элементов управления),
выберите Additional Controls, и отметьте галочкой Microsoft Web Browser)
После этого, у вас появится одноимённый значок в Toolbox.
Насчёт защиты кода, - используется программа ProtectVBA.
Скачать её можно здесь: http://excelvba.ru/soft/VBE
Кстати, может тут ответите, как можно закрыть проект VBA, чтобы при попытке просмотреть его не выскакивало окно введите пароль, а как у вас, "Project Unviewable"?
Просто больше незнаю, в каком разделе этого сайта задать этот вопрос...
А где вы взять компонент WebBrowser?
Ваш макрос суперскии спасибо вам, было бы классно если трафика не было...
Нашёл "топорное" решение проблемы, но всё таки - решение:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
Application.ShowWindowsInTaskbar = False
Application.ShowWindowsInTaskbar = True
End Sub
Т.е. переинициализируем отображение окон на панели задач и вуаля - всё нормально переключается по ALT+TAB.
Команду дописываю на кнопку "Закрыть" формы.
Также, если надо, можно дописать в любом месте выхода из формы.
Пока форма с видео активна - комбинация Alt+Tab работать не будет
(надо предварительно щелкнуть на любой ячейке, чтобы передать фокус ввода приложению Excel)
Программа использует встроенный в Windows браузер Internet Explorer
(если у вас на компе с ним проблемы - возможно. причина в этом)
Больше даже не знаю что предположить, - макрос простенький, глючить там нечему.
Попробуйте на другом компе его запустить - если там заработает, то проблема явно не в этом макросе.
Столкнулся с проблемой в Вашем макросе - после его запуска объединяются все окна MS EXCEL и после этого невозможно переходить между ними по ALT+TAB. Проблема пропадает после полного перезапуска EXCEL. Пытаюсь разобраться, откуда ноги растут... Может подскажите?
Надо быть "ОТЦОМ" программирования как автор
Как можно научиться самому создавать такое в Excel?)
Отправить комментарий