Страницы: 1
RSS
Отображение GIF в UserForm вместо ProgressBar
 
Здравствуйте. Нужна помощь.
На Вашем сайте нашел код расширенного фильтра
ссылка https://www.planetaexcel.ru/techniques/2/197/

Немного изменив его под свои требования.

Код
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A2:J2")) Is Nothing Then
    UserForm1.Show 0
    UserForm1.Repaint
        On Error Resume Next
        ActiveSheet.ShowAllData
        Range("A1").CurrentRegion.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("A1:J2")
    End If
    Unload UserForm1
End Sub


А также нашел способ запуска ProgressBar.
ссылка https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=1&TID=137399&a...

При вводе данных в диапазон В2;J2 срабатывает авто фильтр и запускается UserForm1 но запустить GIF файл не могу, при одновременной работе макроса фильтра. Подскажите где я ошибся. Огромную благодарность приношу всем трудящимся.)
Из за ограничения по размеру не могу сбросить файл который буде запускать UserForm на длительное время.
Изменено: Вадим - 05.03.2021 15:46:49
 
Здравствуйте.
Как сделать: https://youtu.be/f_f38KiYcHw?list=WL
 
Тоже самое что и было :(  запускаться UserForm1 но не сам GIF файл в UserForm_е при работе фильтра, или запускается но фильтр не работает. Или это не реально?
 
А цикл где? Здесь есть For Each и уже внутри цикла идет UserForm1.Repaint.
 
А множа подсказать на моем примере если не тяжело, что конкретно и куда вписать чтобы запустить GIF.
 
Цитата
Вадим написал:
Или это не реально?
как только кто-то поймет что вам нужно - это сразу станет реальным
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Нужно чтобы вовремя фильтрации данных появлялся UserForm1 с активным (работающим) GIF файлом, и закрывался UserForm1 сразу после окончания фильтрации. Такой себе ProgressBar выполняет GIF файл PB-#1.gif.Запуск и закрытие UserForm1 работает вовремя фильтрации данных но сам GIF файл PB-#1.gif в UserForm1 не запускается.
 
В моём понимании процесс фильтрации занимает доли секунды. И Вы хотите на это время отобразить на форме GIF?
 
Именно так. Отобразить планирую GIF файл на UserForm1.
Из за ограничения по размеру не могу сбросить файл который буде запускать UserForm1 на длительное время вовремя фильтрации. В подлиннике сам файл большой, и процесс фильтрации с отображением  UserForm 1 занимает длительное время. По єтому поводу планировал во время фильтрации на UserForm 1 запустить GIF файл, и было бы это вместо ProgressBar.
Изменено: Вадим - 06.03.2021 09:15:39
 
Смысла не понимаю.5 секунд будете наблюдать свой любимый gif
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A2:J2")) Is Nothing Then
    UserForm1.Show 0
    UserForm1.Repaint
     Starts = Timer
    Do While Timer < Starts + 5
        DoEvents
    Loop
        On Error Resume Next
        ActiveSheet.ShowAllData
        Range("A1").CurrentRegion.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("A1:J2")
    End If
    Unload UserForm1
End Sub
 
doober , огромное Вам спасибо!
Это урезанный файл, подледник на много дольше отображает  UserForm1, соответственно и GIF файл, 20-45 секунд
Страницы: 1
Наверх