Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.10.2016, 20:24   #1
roborrr
Математик
Форумчанин
 
Регистрация: 27.02.2011
Сообщений: 123
По умолчанию Анимация с фигурами

Здравствуйте!

Помогите пожалуйста сделать такую анимацию:

на активном листе есть фигура "figura 1" , высота которого .Height=1.

эту фигуру с помощью анимации постепенно надо увеличивать до высоты .Height=500 и эта анимация должно длиться в течении T секунды.

И второй вопрос:

как сделать с помощью vba однотонный фон рисунка "risunok"прозрачным?
roborrr вне форума Ответить с цитированием
Старый 18.10.2016, 21:33   #2
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Где файлы?
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 18.10.2016, 22:23   #3
roborrr
Математик
Форумчанин
 
Регистрация: 27.02.2011
Сообщений: 123
По умолчанию

Цитата:
Сообщение от Aleksandr H. Посмотреть сообщение
Где файлы?
вот файл (см вложение).
Вложения
Тип файла: xlsx animacia.xlsx (9.8 Кб, 28 просмотров)
roborrr вне форума Ответить с цитированием
Старый 19.10.2016, 00:57   #4
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

Создайте на листе ActiveX кнопку, назначьте ей этот код в модуле листа, запишите Т в яч. А1, нажмите кнопку.
Код:
Private Sub CommandButton1_Click()
Dim timeStop#, h#, h0#, t0#, t#, dh#, p#
  h0 = Rectangles(2).Height 'конечная высота
  p = Rectangles(1).Top
  t0 = Timer
  timeStop = t0 + [A1]
  dh = h0 / [A1]            'приращение высоты за секунду
  Do
    t = Timer
    Rectangles(1).Height = dh * (t - t0)
    Rectangles(1).Top = p - dh * (t - t0)
    DoEvents
  Loop Until t >= timeStop
End Sub
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума Ответить с цитированием
Старый 23.10.2016, 09:31   #5
roborrr
Математик
Форумчанин
 
Регистрация: 27.02.2011
Сообщений: 123
По умолчанию

Цитата:
Сообщение от Казанский Посмотреть сообщение
Создайте на листе ActiveX кнопку, назначьте ей этот код в модуле листа, запишите Т в яч. А1, нажмите кнопку.
Код:
Private Sub CommandButton1_Click()
Dim timeStop#, h#, h0#, t0#, t#, dh#, p#
  h0 = Rectangles(2).Height 'конечная высота
  p = Rectangles(1).Top
  t0 = Timer
  timeStop = t0 + [A1]
  dh = h0 / [A1]            'приращение высоты за секунду
  Do
    t = Timer
    Rectangles(1).Height = dh * (t - t0)
    Rectangles(1).Top = p - dh * (t - t0)
    DoEvents
  Loop Until t >= timeStop
End Sub
Большое спасибо! Отлично работает!
roborrr вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с геометрическими фигурами Anaxaim C++ Builder 0 09.05.2014 21:02
Работа с фигурами ramzes777 Мультимедиа в Delphi 2 28.10.2011 18:14
Тестирование памяти с фигурами Acab Помощь студентам 3 05.06.2011 15:28
VBA: работа с фигурами Kuraj Microsoft Office Excel 5 04.01.2010 18:33
Работа с графическими фигурами Fanat1k Помощь студентам 1 03.05.2007 07:59