MyTetra Share
Делитесь знаниями!
Прозрачная форма в VBA (регулировка прозрачности формы)
Время создания: 31.07.2019 22:37
Текстовые метки: form,vba
Раздел: !Закладки - VBA
Запись: xintrea/mytetra_db_adgaver_new/master/base/15147198714xhe0vnl1s/text.html на raw.githubusercontent.com

Прозрачная форма в VBA (регулировка прозрачности формы)

В данной статье собрано несколько примеров установки прозрачности форм (UserForm)

Во всех файлах для установки прозрачности используется WinAPI функция SetLayeredWindowAttributes

Примеры взять с форума ПланетаExcel, и немного переработаны.

Прозрачность форм можно задавать в широком диапазоне - от 0 (полностью прозрачная форма) до 255 (непрозрачная)

Также добавлен пример установки прозрачности самого Excel:
(перед запуском формы, окно Excel плавно «расстворяется» (исчезает), а после закрытия формы также плавно появляется вновь)

Sub ПлавноеИзменениеПрозрачностиExcel()
    hWnd& = GetActiveWindow    ' hWnd приложения Excel
    Dim prozr As Long
 
    ' в течение нескольких секунд, постепенно делаем Excel прозрачным
    For prozr = 255 To 0 Step -4
        DoEvents
        SetTransparent hWnd&, prozr     ' изменяем прозрачность Excel
    Next
 
    UserForm1.Show    ' отбражаем модальную форму

    ' в течение нескольких секунд, постепенно делаем Excel снова видимым
    For prozr = 0 To 255 Step 4
        DoEvents
        SetTransparent hWnd&, prozr   ' изменяем прозрачность Excel
    Next
    SetVisible hWnd&, 255   ' восстанавливаем видимость Excel
End Sub


Вложение

Размер

Загрузки

Последняя загрузка

Регулировка прозрачности формы (от 0 до 255)

35.5 КБ

8

3 года 5 недель назад

Плавное появление и исчезание формы VBA

47 КБ

89

3 недели 3 дня назад

Плавно исчезающий Excel на время работы с формой

50.5 КБ

8

3 года 5 недель назад

  • 11851 просмотр
Так же в этом разделе:
 
MyTetra Share v.0.59
Яндекс индекс цитирования