Как сделать анимацию в excel?

Как построить динамический график с анимацией в Excel

Создание оригинальных, интерактивных и динамических графиков с анимацией в Excel можно реализовать с помощью макросов. Анимация очень уместна в скучных отчетах, особенно если речь идет о визуализации данных.

Как сделать интерактивный график с анимацией в Excel

В данном примере возьмем за исходный показатель изменяемое число в процентном значении. Создайте две таблички как показано ниже на рисунке:

Продолжаем заполнять вторую таблицу. В первой ячейке второй таблички указываем формулу вычитания от 100% значение, взятое из исходного показателя:

Теперь переводим оба значения в отрицательное число процентов:

Исходные данные подготовлены и обработанные. Переходим непосредственно к построению динамического графика.

Выделите диапазон ячеек D2:G1 второй таблицы и выберите график: «ВСТАВКА»-«Диаграммы»-«Гистограмма с накоплением»:

Теперь перейдите в дополнительное меню гистограммы и выберите переключатель: «РАБОТА С ДИАГРАММАМИ»-«КОНСТРУКТОР»-«Данные»-«Строка/Столбец»:

За одно снимите все галочки с опций выпадающего меню «ЭЛЕМЕНТЫ ДИАГРАММЫ» при нажатии на кнопку плюс «+».

Далее нижний (Ряд4) и через один вверх (Ряд2) присваиваем одинаковый цвет. А для остальных двух рядов (верхний Ряд1 и через один вниз Ряд3) делаем невидимыми убрав цвет заливки:

Динамический график для анимации готов, но мы добавим к нему сложную фигуру, сделанную также в офисной программе PowerPoint.

Как сделать сложную фигуру для красивых графиков в PowerPoint

Теперь нам необходимо сделать сложную фигуру. Для этого нам понадобиться программный инструмент – PowerPoint , который также входит в пакет MS Office. В нем для создания фигур предусмотрена очень полезная опция «Слияние фигур», которой нет в Excel или Word. Откройте программу PowerPoint из пакета офисных программ MS Office и выберите: «ВСТАВКА»-«Иллюстрации»-«Фигуры»-«Пятиугольник»:

Создаем 2 таких фигуры переворачиваем их вертикально создавая форму песочных часов, как показано ниже на рисунке:

Выделяем две фигуры и объединяем в одну выбрав инструмент и з дополнительного меню: «Средства рисования»-«ФОРМАТ»-«Вставка фигур»-«Объединить фигуры»-«Объединение»:

Далее необходимо создать еще одну большею по размерам фигуру «Прямоугольник» без контура. После чего необходимо наложить сверху на большой прямоугольник фигуру песочных часов предварительно выделив и выбрав: «Средства рисования»-«ФОРМАТ»-«Упорядочение»-«Переместить вперед»-«На передний план». Затем выделить их обе и выбрать инструмент: «Средства рисования»-«ФОРМАТ»-«Вставка фигур»-«Объединить фигуры»-«Группирование»:

В результате у нас получилась маска. Меняем для нее цвет заливки на «белый» используя палитру: «Средства рисования»-«ФОРМАТ»-«Стили фигур»-«Заливка фигуры»-«Цвет-белый». А чтобы удалить только лишь внешний контур сначала копируем CTRL+C, но вставляем через контекстное меню вызванное правой кнопкой мышки кликнув на пустом месте листа Excel. Из появившегося контекстного меню выбираем опцию «Рисунок», чтобы вставить фигуру как рисунок:

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

Добавление сложной фигуры из PowerPoint на график в Excel

Пока выделен рисунок доступно дополнительное меню с инструментом обрезки его внешней границы: «РАБОТА С РИСУНКАМИ»-«ФОРМАТ»-«Размер»-«Обрезка»

Устанавливаем новые границы с помощью маркеров и снова нажимаем на кнопку «Обрезка», чтобы получить желаемый результат.

Недостает еще визуальной имитации струи. Для этого добавим еще одну фигуру прямоугольника без контура, но с таим же цветом заливки как окрашенные рады гистограммы. Этот прямоугольник можно уже создать прямо из Excel, выбрав фигуру для струи: «ВСТАВКА»-«Иллюстрации»-«Фигуры»-«Прямоугольник». А цвета настраиваем из его дополнительного меню: «СРЕДСТВА РИСОВАНИЯ»-«ФОРМАТ»-«Стили фигур»-«Заливка»-«Цвет»-«Зеленый» и здесь же «Контур»-«Нет контура»:

Размер данного прямоугольника должен быть по высоте равен нижнему сосуду, а ширина равна горловине нижнего сосуда. Все готово для оживления с помощью анимации динамического графика VBA-макросами Excel.

Макрос для анимации динамического графика в Excel

Для добавления анимации откройте редактор макросов: «РАЗРАБОТЧИК»-«Код»-«Visual Basic» (Alt+F11). Затем пропишите ниже приведенный код макроса прямо в Лист1:

Код макроса для копирования:

Option Explicit
Private Sub Worksheet_Change( ByVal Target As Range)

Dim i As Integer
Dim temp As Integer
temp = 1000 / ActiveSheet.Range( «B4» )

If Target.Address = «$B$2» Then

For i = 0 To Int(Target.Value * temp)
DoEvents
ActiveSheet.Range( «B3» ).Value = i / temp
Next i
ActiveSheet.Range( «B3» ).Value = Target.Value
End If
End Sub

Теперь после ввода значения в ячейку B2 будет каждый раз автоматически выполнятся макрос анимации значений в ячейках, соответственно на графике.

Нам осталось лишь добавить подписи данных на графике, передав в них значение из ячейки B3. Но в этом случае в качестве подписей данных мы не будем использовать средства диаграмм, а создадим свою с помощью надписи. Для этого выберите опцию из: «ВСТАВКА»-«Текст»-«Надпись»:

Пока выделен элемент «Надпись» выведите в строку формул ссылку на ячейку B3 и нажмите клавишу Enter на клавиатуре для подтверждения. Таким образом мы в надпись передаем значение из ячейки B3 в качестве отображаемого текста. Протестируем график на интерактивность и динамическую изменяемость с помощью анимации:

Читать еще:  Как сделать страницы в excel в 2010?

Стоит отметить что в ячейке B4 мы можем задать скорость анимации. Таким образом не сложно из интерактивного графика сделать таймер в Excel.

Анимация на графиках позволяет развеселить любую скучную презентацию с визуализацией данных на графиках и диаграммах в Excel. Теперь Ваши отчеты и труды бут привлекать к себе больше внимания.

Как сделать анимацию в excel?

Я сделал это!
http://youtu.be/7aaYBlOByKc

зы. Кто поможет оптимизировать VBA скрипты?


AV © ( 2012-09-17 11:28 ) [1]

А зачем 🙂
Делать нечего?

Сделай лучше класс загрузки txt и html в TClientDataSet
где есть пропертя формат_строки_в_файле
где есть пропертя формат_таблицы_в_памяти
Динамически записываем формат_строки, скармливаем файл, получаем DataSet
разделители тоже любые, позиционные/спец.символы

И что бы удобно было, а не как у меня 🙂
Всегда лучше получается заново быстро написать для конкретного случая.


alexdn © ( 2012-09-17 11:50 ) [2]

Ну вообщем прикольно, похоже на того амера, про которого ветка была.. только у того компьютер наверно помощнее, ну и наверно скрипты действительно оптимизированны..


brother © ( 2012-09-17 19:03 ) [3]


xayam © ( 2012-09-18 01:56 ) [4]

вот дай программисту игрушку 🙂


Труп Васи Доброго © ( 2012-09-18 09:40 ) [5]


> только у того компьютер наверно помощнее

Свига-ли помощнее? У того амера размер ячейки гораздо крупнее = ячеек меньше задействовано = картинка менее качественная.


DevilDevil © ( 2012-09-18 10:08 ) [6]

может сгенерировать скрытый лист со всеми кадрами и каждый кадр с этого листа копировать в основной (отображаемый) лист ?

Public Sub ApplicationBeginUpdate()
Application.ScreenUpdating = False
Application.EnableEvents = False
Application.Interactive = False
Application.UserControl = False
«Application.Calculation = xlCalculationManual
End Sub

Public Sub ApplicationEndUpdate()
Application.EnableEvents = True
Application.Interactive = True
Application.UserControl = True
Application.Calculation = xlCalculationAutomatic
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub


Труп Васи Доброго © ( 2012-09-18 11:14 ) [7]

Я вот сейчас «нарисовал» картинку на листе (руками), потом руками скопипастил её на 100 листов с небольшим смещением и сделал макрос который просто активирует листы по очереди. Очень динамичный «мультик» получился. Может так быстрее будет. Показывать по очереди показывать (по кругу) и фоном перерисовывать уже показанный.


brother © ( 2012-09-18 12:37 ) [8]

> Public Sub ApplicationBeginUpdate()
> Application.ScreenUpdating = False
> Application.EnableEvents = False
> Application.Interactive = False
> Application.UserControl = False
> «Application.Calculation = xlCalculationManual
> End Sub
>
> Public Sub ApplicationEndUpdate()
> Application.EnableEvents = True
> Application.Interactive = True
> Application.UserControl = True
> Application.Calculation = xlCalculationAutomatic
> Application.DisplayAlerts = True
> Application.ScreenUpdating = True
> End Sub

да уже применил.

> и фоном перерисовывать уже показанный.

не понял.


brother © ( 2012-09-18 12:42 ) [9]

главное, как я проверил, ну не может ексель пробежать 100×100 ячеек быстро закрасив их все( даже применяя [6] и это крупный облом (
зы. что позабавило, если при восспроизведении анимации навести мышь на ексель в таск баре, то после показа превью окна (вин7 х64) анимация ускоряется в 2 раза.


DevilDevil © ( 2012-09-18 12:47 ) [10]

> не может ексель пробежать 100×100 ячеек быстро закрасив
> их все( даже применяя [6]

Ты не увидел сути поста
Копируй область ячеек в область ячеек. А не раскрашивай программно.


brother © ( 2012-09-18 12:50 ) [11]

> Копируй область ячеек в область ячеек.

а, понял. поробую.


был здесь ( 2012-09-22 23:18 ) [12]


> Кто поможет оптимизировать VBA скрипты?
> .
> Копируй область ячеек в область ячеек. А не раскрашивай программно.
> . сгенерировать скрытый лист

кстати если так рассуждать, то возможно практичнее сгенерировать скрытые
диапазоны строк, в каждом диапазоне фикс. кол-ва скрытых строк — будет один кадр, то есть все кадры получатся на одном листе.


был здесь ( 2012-09-22 23:21 ) [13]

используя такой подход, анимация сведется к удалению первого диапазона строк и показу следующего диапазона (без копирования из ячейки в ячейку)


был здесь ( 2012-09-23 00:00 ) [14]

плюс еще одна идея для оптимизации есть:

даже удалять не обязательно

в excel можно сделать зону скроллинга нужной высоты (в один кадр), тогда
анимация сведется к прокрутки зоны скроллинга от кадра к кадру


xayam © ( 2012-09-23 12:24 ) [15]

и еще одно [«был здесь» это я с нетбука]:

не стоит копировать на 100% то что было у того парня в плане качества:

возможно после оптимизации получится работать не с заливками ячеек, а с рамками этих ячеек, то есть размеры ячейки уменьшаются практически до нуля, останется только рамка! качество будет явно лучше на этих рамках-пикселях


brother © ( 2012-09-23 13:47 ) [16]


Inovet © ( 2012-09-23 14:38 ) [17]

> [15] xayam © (23.09.12 12:24)

качество = разрешение?


xayam © ( 2012-09-23 16:32 ) [18]


> качество = разрешение?

и разрешение тоже.

Проблема тормозов имхо решится скроллингом, но оперативка нужна, файл получится бОльше по размеру.

Интерактивный график

Скачать пример из видеоурока:

Интерактивная диаграмма.xls (47,5 KiB, 1 691 скачиваний)

Вводные данные: имеется таблица с данными по выручке от продаж на нескольких торговых точках:

Если построить график сразу по всем данным, то он будет смотреться вполне неплохо в качестве инструмента для сравнения выручки между торговыми точками:

Читать еще:  Скриншот как сделать в excel

Но что если необходимо показать динамику по каждой точке отдельно? Приведенный выше график не очень подходит для этой цели — слишком много лишних данных, в результате чего он смотрится довольно нагроможденно. Можно создать несколько одинаковых графиков, каждый из которых будет показывать данные по одной торговой точке. Это будет наглядно и удобно, если торговых точек 3-5. Но если их 10 и более, то такое нагромождение графиков мало того, что не наглядно — это еще весьма затратно по времени.
Поэтому, если есть необходимость показать динамику по отдельным торговым точкам, но при этом не обязательно делать много графиков, можно воспользоваться таким решением:

Скачать пример:

Интерактивная диаграмма.xls (47,5 KiB, 1 691 скачиваний)

А теперь разберем, как это можно сделать.

  • Для начала необходимо создать диаграмму нужного типа: выделяем диапазон A4:K5 -вкладка Вставка (Insert) -группа Диаграммы (Charts)Вставить график или диаграмму с областями (Line)График (Line)
  • в удобном месте на основании названий торговых точек создаем обычный выпадающий список
    В файле примере список создан в ячейке B11 : выделяем ячейку B11 -вкладка Данные (Data)Проверка данных (Data Validation). В поле Тип данных (Allow) выбираем Список (List) , в поле Источник (Source) указываем ссылку на диапазон с именами торговых точек: =$A$5:$A$9
  • Теперь необходимо создать именованный диапазон, который в зависимости от выбранной в списке торговой точки сформирует диапазон данных для диаграммы. Переходим на вкладку Формулы (Formulas)Диспетчер имен (Name Manager)Создать (New) . В поле Имя (Name) пишем: _forchart , а в поле Диапазон (Refers to) следующую формулу:
    =СМЕЩ( $B$4:$K$4 ;ПОИСКПОЗ( $B$11 ; $A$5:$A$9 ;0);)
    =OFFSET($B$4:$K$4,MATCH($B$11,$A$5:$A$9,0),)
    функция СМЕЩ(ссылка; смещ_по_строкам; смещ_по_столбцам; [высота]; [ширина]) — OFFSET
    берет ссылку на указанные ячейки и смещает эту ссылку на указанное количество строк и столбцов. В качестве ссылки указываем заголовок с датами из таблицы выручки: $B$4:$K$4
    ПОИСКПОЗ (MATCH) — эта функция берет ячейку $B$11 и ищет её в диапазоне $A$5:$A$9 . Когда находит, то возвращает номер строки, в которой она находится в этом диапазоне. Т.е. для «К-р Октябрьский» это будет значение 1, для «ул.Ленина» — 2 и т.д.
    Это значит, что как только мы изменим значение в ячейке B11(а там у нас список торговых точек), то функция СМЕЩ сразу переопределит диапазон:
    =СМЕЩ( $B$4:$K$4 ;ПОИСКПОЗ( $B$11 ; $A$5:$A$9 ;0);) =>
    =СМЕЩ( $B$4:$K$4 ;ПОИСКПОЗ( «ул.Фурманова» ; $A$5:$A$9 ;0);) =>
    =СМЕЩ( $B$4:$K$4 ;5;) =>
    = $B$9:$K$9

Остается только назначить этот диапазон созданной диаграмме: выделяем диаграмму -правый щелчок мыши —Исходные данные (Source data) или Выбрать данные (Select data)

выделяем единственный ряд в поле Элементы легенды(ряды) (Legeng Entries (Series)) и нажимаем Изменить (Edit)

  • в поле Имя ряда (Series name) вписываем =Interactive!$B$11
  • в поле Значения (Series values) вписываем: =Interactive!_forchart

    совет: изначально в этом поле записана прямая ссылка: =Interactive!$B$5:$K$5 . Чтобы ничего не упустить надо просто заменить адреса ячеек на именованный диапазон, который создали ранее — _forchart: =Interactive! $B$5:$K$5 => =Interactive! _forchart
    восклицательный знак и возможные другие знаки надо оставить.

    Два раза нажимаем Ок. Все, наша диаграмма готова. Теперь можно выбирать название из выпадающего списка и диаграмма поменяет свои значения на продажи выбранной торговой точки.
    Скачать пример:

    Интерактивная диаграмма.xls (47,5 KiB, 1 691 скачиваний)

    Статья помогла? Поделись ссылкой с друзьями!

    Поиск по меткам

    Здравствуйте, спасибо за детальное пояснение построения данных таблиц!
    В данном материале рассматривалась таблица, где было 2 показателя:
    название магазина и выручка по периодам.
    У меня вопрос: как можно сделать такую диаграмму если есть такие показатели: название магазина, выручка по периодам, оборот по периодам, количество (шт.) по периодам.
    И возможно ли вообще это сделать с помощью такого инструмента?
    Спасибо!

    Анна, сложно что-то посоветовать, не видя данных и их расположения. Обратитесь в форум или вышлите файл мне на почту(контакты есть на сайте). Или выложите файл на сетевой обменник и приложите в комментариях ссылку.

    Поделитесь своим мнением

    Комментарии, не имеющие отношения к комментируемой статье, могут быть удалены без уведомления и объяснения причин. Если есть вопрос по личной проблеме — добро пожаловать на Форум

    Как анимировать диаграммы Excel в PowerPoint

    Презентации PowerPoint с большим количеством данных не должны быть скучными. Excel позволяет легко собирать несколько строк данных и преобразовывать их в легко интерпретируемые визуальные диаграммы. Когда вы связываете свои данные с PowerPoint, вы можете анимировать диаграммы Excel для создания привлекательной презентации

    Мы проведем вас через процесс шаг за шагом. Смотрите, как ваши данные оживают.

    Создание вашей диаграммы

    Первым шагом в анимации диаграмм Excel является создание диаграммы

    с данными, которые вы собрали. Если вы не уверены, какой тип диаграммы подходит для ваших данных, посмотрите это руководство по выбору правильной диаграммы Excel.

    Если ваши данные изменяются регулярно, и вам необходимо, например, ежемесячно проводить презентацию, вы можете создавать самообновляющиеся диаграммы в Excel

    и перенести их в PowerPoint, чтобы оживить их.

    Если вы создаете одноразовую диаграмму, вам даже не нужно открывать Excel на вашем компьютере. Вы можете начать прямо в PowerPoint, перейдя в Вставить> Диаграмма Вы можете выбрать свой тип диаграммы и добавить данные с помощью небольшого всплывающего окна Excel прямо в программе.

    Читать еще:  Как сделать вычислительную таблицу в excel?

    Если у вас мало данных, вы можете создать круговую диаграмму прямо в PowerPoint, используя функцию фигур приложения.

    Анимационное меню PowerPoint

    Как только вы подготовили диаграмму к работе, вы можете скопировать ее в PowerPoint для ее анимации. Нажмите на график или график и используйте сочетание клавиш Ctrl + C скопировать это. Откройте пустой холст в PowerPoint и используйте сочетание клавиш Ctrl + V вставить это.

    В PowerPoint вы будете проводить все свое время в Анимация Вкладка. Здесь вы найдете все инструменты, необходимые для анимации диаграмм в PowerPoint.

    Вы должны увидеть небольшой выбор анимации в меню в верхней части экрана. Нажмите на стрелку в конце анимации, чтобы увидеть все анимации, доступные для пользователей PowerPoint.

    Анимация гистограммы

    В нашем примере мы используем данные из шаблона электронной таблицы «Бюджет расходов», который включает гистограмму.

    Лучший вариант для гистограммы — чтобы она появлялась снизу вверх. протирать анимация является подходящим выбором для этого вида движения.

    Чтобы применить анимацию, сделайте следующее:

    • Нажмите, чтобы выбрать график.
    • Нажмите на протирать кнопка анимации.
    • Анимация будет применена ко всему графику.

    Затем вы захотите изменить расширенные настройки анимации, чтобы они появлялись постепенно, а не за один раз.

    Эти настройки находятся в Параметры эффекта.

    С Параметры эффекта Вы можете выбрать направление анимации — оно может отображаться сверху, снизу, слева или справа. Вы также можете определить, как ваша диаграмма будет анимирована: как один объект, по категории или по серии.

    Так что же на самом деле означают эти опции?

    • По категориям: Это оживляет ваши данные по каждой категории на оси X вашей гистограммы. Если каждая категория включает одну полосу, каждая полоса будет анимирована индивидуально. Если в каждой категории несколько баров, они все будут анимированы одновременно.
    • По сериям: Эта опция анимирует ваши данные по каждому отдельному цвету в категории на оси X вашей гистограммы. Каждый набор полос одного цвета будет анимирован вместе.
    • По элементу в категории: Эта опция анимирует ваши данные по каждой категории на оси X, но значительно замедляет анимацию. Каждый столбец будет анимироваться один за другим, поэтому, если у вас есть график, подобный приведенному ниже, он будет просто анимировать каждый столбец в том порядке, в котором он отображается на вашем графике.
    • По элементу в серии: Каждая серия (или набор полос одного цвета) будет анимирована индивидуально. Каждая полоса одного цвета будет анимироваться индивидуально одна за другой, за которой следует следующий цвет.

    Для каждого из этих вариантов вы также можете проверить Запустите анимацию, нарисовав фон графика. Это позволит фону постепенно появляться до того, как начнут появляться элементы графика.

    Если вам не нравится внешний вид вашей анимации, вы можете проверить другие параметры, нажав на название анимации на вкладке. Примененные эффекты будут поддерживаться с новым типом анимации.

    Чтобы увидеть весь процесс в действии, посмотрите видео ниже:

    Выбор правильной анимации для вашей диаграммы

    Как мы уже упоминали, в Excel доступно множество различных типов диаграмм. Используемая вами диаграмма зависит от характера ваших данных, а анимация, которую вы используете для этой диаграммы, зависит от типа выбранной вами диаграммы.

    В дополнение к стандартным анимациям диаграммы, которые отображаются в меню, вы можете просмотреть дополнительные анимации входа, выхода и выделения, щелкнув стрелку вниз в конце списка анимаций.

    Вы можете увидеть еще больше анимаций, нажав Больше эффектов входа в этой панели.

    • Гистограммы: Для гистограмм, подобных приведенному выше, хорошо подойдут Wipe, Peek In и Fade.
    • Круговые диаграммы: Для круговых диаграмм попробуйте следующие анимации: Wheel, Zoom и Fade. В GIF ниже вы можете увидеть пример круговой диаграммы, анимированной с помощью колеса.
    • Сложенная область: Для диаграмм с накоплением областей, попробуйте следующие анимации: Fade, Appear или Wipe. В GIF ниже вы можете увидеть пример диаграммы с областями с эффектом затухания.
    • Линейные графики: Хороший выбор для линейных графиков — Wipe, но не забудьте выбрать направление анимации слева.

    Существуют и другие способы настройки анимации в соответствии с типом используемой вами диаграммы. Открой Анимационная панель и в меню нажмите тайминг. Под панелью синхронизации вы можете контролировать, насколько быстро появляется ваша анимация, нужно ли нажимать, чтобы анимация появлялась, и должна ли анимация повторяться.

    Эксперимент — твой друг

    Вероятно, вам придется тестировать различные анимации и разные параметры, чтобы увидеть, что лучше всего подходит для ваших данных, графиков и стиля представления. Тестирование различных опций и скоростей гарантирует, что вы найдете настройки, которые подходят именно вам.

    После того, как вы сделали это несколько раз, процесс анимации диаграмм Excel станет намного быстрее.

    Какие виды графиков

    вы используете для своих данных Excel? Есть ли другая программа или инструмент, который вы предпочитаете использовать для анимации ваших графиков? Дайте нам знать об этом в комментариях.

    Кредит изображения: IgorTishenko / Depositphotos

  • Ссылка на основную публикацию
    Adblock
    detector