Geek Documentation Logo

Easing Functions

Version 1.2


If you have already purchased this Software, let me take a moment to thank you for being a loyal customer
You are entitled to free lifetime updates for ALL future builds

This documentation is to help you understand the Software and to give you a more meaningful insight into what it can do. Please go through the documentation and read it carefully · Moderate VBA skills will be required


You will need the following Excel Version & Prerequisite to use this Software

  1. Excel 2010, 2013 & 2016 (32bit or 64bit)
  2. Moderate VBA skills
  3. Access to the VBOM (a setting in Excel) & Macro's must be enabled
  4. Windows PC · NOT a Mac!

No support is provided for customization or development of this Software

About Easing Functions #back to top

This Software uses Robert Penners easing functions converted from JavaScript to VBA. These Functions together with the Code in the 'mdlEasingFunctions' Code Module move the little square according to the type of Function selected using the Drop-down combo in Cell "I3". Here is one of the converted Functions:

Function easeOutQuad(ByVal t As Double, ByVal b As Integer, ByVal c As Integer, ByVal d As Double)
    t = t / d
    easeOutQuad = -c * t * (t - 2)
End Function						

There is also a Worksheet demonstrating some Shape Animations using a Button. The Effect is a Bounce with some lovely smooth Button Flyouts

Getting Started #back to top

The download File

Open the 'easingFunctions.xlsm' File. Test the 9 examples by selecting them from the Drop-down Combo Box and pressing the 'Run Easing' Button

Quick Steps

1. Press ALT+F11 to open the VBA Editor and examine the Code - you will find the easingFunctions(), Example Subroutine, a FrameTimer() Function and all of the Easing Functions

2. As an example suppose you had a Shape called shpWheel, then to animate the Shape you can modify the routine given in the easingFunctions() Subroutine and use shpWheel.Top = easeOutBounce(dblFrame, intStart, (intEnd - intStart), dblTotalFrames) to move the Shape using an "easeOutBounce" Easing Function

3. Please Note: a good level of VBA skills are required to use these Easing Functions - this Code gives you a method and Frame Time enabling the process and the ported Easing Functions

The Easing Plot Chart #back to top

The Easing Plot Chart shows you the movement in time throughout each Function using the data at Cell "B22":

Easing Plot Image

The Frame Timer #back to top

The Software uses a simple Frame Timer to control the motion, looping for a specified interval. The precise nature of the Frame Timer allows you to move the square smoothly through each Easing Function

Shape Animation #back to top

In Version 1.2 I have added some lovely, smooth Shape Button Bounce and Flyout animations for you to use in your own Projects. The Shapes are just simple Rectangles with preset values in the Subroutines - check out the Code, I think these look really cool. Here is a video of the animations:

Screen Shots #back to top

Easing Functions - easeinQuad

Easing EaseInQuad Image

Easing Functions - easeOutBounce

Easing EaseOutBounce Image

Videos #back to top

Easing Functionsbar Simulation Demo

This is a demo of my ported easing Functions in action together with a nice Chart plot of the data

This is a demo of some Button Shape animations, Bounce and Flyout available in Version 1.2

There are currently no frequently asked questions about this Software that cannot be answered via this documentation

Support #back to top

Please remember you have purchased very affordable Software and you have not paid for a full-time Software design agency - I am but one man. Occasionally I may help with small tweaks, but these requests will be put on a much lower priority due to their nature. You have not PAID for Support, Support is 100% optional and I provide it for your convenience, so please be patient, polite and respectful

Support (limited) for my Software includes:

* Responding to questions or problems regarding the Software and its features
* Fixing valid (replicated) bugs and reported issues for the VERSION I HAVE WRITTEN

Software support does not include:

* Customization and installation services
* Support for third party software or ANY kind of development whatsoever

Before seeking support, please...

* Make sure your question is a valid Software Issue and not a customization request
* Make sure you have read through the documentation and any related video guides before asking support on how to accomplish a task
* Make sure to double check the Software FAQs or online documentation
* Ensure that you access to the VBOM is allowed and that Macros can run in Excel
* Make sure to provide 'proof of purchase' and state the name / version of the Software that you are having issues with when requesting support by Email or via Facebook

How to get Support

Contact Mark Kubiszyn on the Email address provided when you purchased the Software, including the Order Number
Contact via our Facebook Page - remember to be patient, if there has been an issue with your download, I will always respond within 48 hours and will Email you the File directly if neccessary or via Messanger. For other issues the response time may be considerably longer and I may choose to respond to specific questions only (as is my right), depending on what has been asked

Version History (Changelog) #back to top

You can find the version history in the Code Module for any Macro-enabled Software or read more information below. The latest Version is always shown first


28.10.2018 - (Version 1.2) added some Shape Flyout & Bounce animations on a new Worksheet


20.10.2016 - (Version 1) released