Introduction
Introducing Dropdown Preloader for Excel
Dropdown Preloader with Easing for Excel (32bit or 64bit, Version 16, Office 365) · CHECK BEFORE PURCHASING! You MUST be able to insert animated gif's into excel to use this Software - see Prerequisites below
Did you know that in Office 365 you can add animated '.GIF's' directly into an Excel Worksheet? - you did? Good! Dropdown Preloader makes the most of this ability by manipulating the Row Height using various types of easing to create a Drop-down effect that seamlessly slides up and down from the top of the main Excel Window. Within that Row you can run a Macro to display an animated .GIF or Preloader whilst completing some task in Excel. You can also have any amount of Text or Icons and link these to parts of the Excel Document and open external file links such as a Webpage. Choose whether to have no Cursor flicker (we will change it to the xlNorthwestArrow) or to allow the Cursor to spin with the Hand Cursor as the Preloader slides up or down. Change the Height of the Row, the type of Easing and the Speed used for the animation. You can even Pause the animation for the GIF if you don't protect the User Interface for Objects. Dropdown Preloader does not use API calls, only a simple VBA Subroutine
You can use this technique together with Excel's Calculation when running Code to Copy Formula (something lots of us do, well, a lot). We will execute the Preloader using Code together with Application Calculate to recalculate a Range of Formula and display Excel's Calculation Status / Progress. There are not many procedures that actually allow an indicator of any kind to run as well as displaying Excel's Calculation progress
Dropdown Preloader uses a variety of easing functions for the sliding animation which can be changed in the VBA Code. You are purchasing Dropdown Preloader v1.2
If you love Dropdown Preloader, you may also like any of the following Software
SliderMenu · Preloader
Prerequisites
- Microsoft Excel 2016 Version 16 (32bit or 64bit) · designed for Office 365 Windows 11. Please check that you can actually 'Insert' an Animated Gif into Excel and that it animates. If it looks like the image below after inserting an animated Gif then your Excel Version will not work with this Software! You should see a Play and Pause button and some animation - download this animated image and try inserting it into your Excel Animated Facebook Gif - once opened in a new Window do Right-click, Save as ... If all looks good then you can purchase this Software with confidence that it will work okay with your Excel version
- Basic to moderate Excel Skills and some basic VBA skills
- Windows PC · NOT a Mac!
- No support is provided for customization of this Software
Features
- Useful for running Tasks in Excel when you want to display some kind of Progress Indicator dynamically
- A nifty Facebook-style pulsing Loader Preloader and a spinning Circle Preloader
- Six easing Functions: .easeInSine, .easeOutSine, .easeInExpo, .easeOutElastic, .easeInBack and .easeOutQuintic
- Choose whether to have no Cursor flicker (we will change it to the xlNorthwestArrow) or to allow the Cursor to spin with the Hand Cursor as the Preloader slides in or out
- No API's used by the Code
- Pause the Preloader Animation
- Use this technique together with Excel's Calculation when running Code to Copy Formula (something lots of us do, well, a lot) and indicate when the process is over. We will execute the Preloader using Code together with Application Calculate to recalculate a Range of Formula and display Excel's Calculation Status / Progress. There are not many procedures that actually allow an indicator of any kind to run as well as displaying Excel's Calculation progress
- Swap the Animated GIF image quickly by clicking 'Change Picture->This Device ...' from the 'Adjust' Group of the 'Picture Format' Tab on the Ribbon
Credits
Preloaders generated and downloaded from loading.ioInstallation (current version v1.1)
Open the file 'Dropdown Preloader v1.1.xlsm' (or the current version equivalent) and click on the Demo Sheet. Press the demonstration Circle Button (1) to slide the Preloader down from the top of the main Excel Window and begin its Facebook-style, pulsing loading animation. A task will run that colours in Cells in the Active Worksheet and a message will update the Statusbar with the task progress. Once the task is complete the Preloader will slide back up and the Preloader animation (animated GIF) will disappear. Test out the other Demo Sheets
To use Dropdown Preloader v1.1 in your own Projects open the 'Dropdown Preloader v1.1.xlsm' file and your own Macro-enabled Project. Then open the VBE (Visual Basic Editor) and drag the 'IEasing' Class Code Module and the the 'mdDropdownPreloader' Code Module into your own Macro-enabled file. Now link up a Button to the main 'DropdownPreloader()' Subroutine or one of my 'DoTask()' Subroutines
That's it, you can also configure the Constants in the top of the 'mdDropdownPreloader' Code Module if you want to change the Row Number (i.e swap the Dropdown Preloader to Row 4, which is obviously 4 numerically) that slides up and down or the Row Height, easing and Speed of the easing
Take some time to examine how Dropdown Preloader works and read the Usage Section in this online documentation before you begin to create your own Dropdown Preloaders for Excel or before turning to Support
Usage
How to use Dropdown Preloader
Abstract
Dropdown Preloader is designed to be used as a Drop-down Row that slides down and up from the top of the main Excel Worksheet Window using Easing functions for its animation. It is set as Row 1 for the demonstration, with the Row size being constrained to zero (0). This can be changed and the Drop-down Preloader can be adjusted by a number of different parameters to change its look and feel
The Demo1 Sheet
All of the Demo Sheets have a small Button that can be clicked to display each Dropdown Preloader example. Click on the Demo1 Sheet. This Button is linked to the Macro 'DoTask()' which in turn runs a separate task and then the Preloader subroutine 'DropdownPreloader'. It uses the Easing function 'Easing.easeOutSine()' and the Preloader image is called 'Facebook_Preloader'. Press the '1' Button to run the task and see the Facebook-style Dropdown Preloader in action. A task will run that colours in Cells in the Active Worksheet and a message will update the Statusbar with the task progress. Once the task is complete the Preloader will slide back up and the Preloader animation (animated GIF) will disappear. The Code used to run this Preloader is shown below together with a Screen shot of the Demo1 Sheet running the task and displaying the Preloader
Public Sub DoTask() ' check that the Row Height of Row 1 is set to zero (0) and that the Dropdown Preloader is not running If ActiveSheet.Range("A1").RowHeight <= 0 And Not Running Then Running = True ' Drop down the Preloader DropdownPreloader ' run a Task DoEvents Task1 ' Hide the Preloader DropdownPreloader Running = False End If End Sub
Demo1 · The Facebook-style Animated GIF
The Code used by the Dropdown Preloader does not Protect any Drawing Interfaces or Worksheets as it runs. The Animated Facebook-style Preloader image was created and downloaded from loading.io. You should go and create your own Preloader animated GIF's using this website - remember to make sure that you choose 'Background as Transparent' before you download your finished Preloader. Once you have created one and downloaded it to your PC or Laptop, you should add it using 'Pictures->Place over cells->This device' from the 'Illustrations' Group of the 'Insert' Tab on the Ribbon. To expose the current, hidden, Preloader for editing, select all of the Rows and Columns by clicking on the tiny arrow underneath the Ribbon and then highlighting Row 2, choose 'Unhide ...'. This will display Row 1. Now select Row 1 and drag it down to resize it. Then use the Selection Pane on the 'Find & Select' Button on the 'Editing' Group of the 'Home' Tab on the Ribbon to select your Preloader or just click on the animation itself. From here you can swap the animation by clicking 'Change Picture->This Device ...' from the 'Adjust' Group of the 'Picture Format' Tab on the Ribbon. Set the Row Height of Row 1 back to zero (0) before clicking the Circle Button again to test your new Preloader otherwise the VBA Code will not trigger
Demo2 · The Circle Animated GIF
Click on the Demo2 Sheet and run the next example. This time a red Circle Preloader will slide appear and a similar task will run. This time the Button is liked to the 'DoTask2()' Subroutine. As per Demo1 you can swap the Preloader should you wish. The Circle Preloader has its Rotation set to 90 degrees by default and the Preloader image is called 'Rolling_Preloader'. It uses the same Easing function as the first example, 'Easing.easeOutSine()'. Here is the Preloader running its task:
Demo3 · Copying Formula down an Excle Range & then Changing to Special Values
Click on the Demo3 Sheet. This time we will execute the Facebook-style Preloader using Code together with Application Calculate to recalculate a Range of Formula and display Excel's Calculation Status / Progress. We will also change the Formula to Special Values afterwards. I lose track of the amount of time that I use this technique every day at work. The effect looks smart and is smooth. Here is a Screen shot of the Demo3 Sheet with the Preloader running and Excel calculating the Formula Range:
The Editable Constants in the VBA Code
A number of editable constants are added at the top of the 'mdDropdownPreloader' Code Module, for example use DROPDOWN_CURSOR = xlWait to display a spinning cursor when sliding the Menu in or out or set DROPDOWN_ROW = 4 to change it to Row 4 instead of Row 1. Changing DROPDOWN_MAX to a different number sets the maximum Row Height that the Dropdown reloader will resize its Row to and increasing/decreasing the DROPDOWN_TIMER_REFRESH_RATE will change the speed of the Dropdown Preloader. Setting the DROPDOWN_EASING_SKIP_FRACTIONALS to True will make a faster transition as the VBA Code will ignore the fractional parts returned by the easing Function
Please note: if you want to have different Dropdown Preloaders in the same Workbook you can copy the Code Module, change the name of the DropdownPreloader main Subroutine and have a second or third set of editable constants
Private Const DROPDOWN_CURSOR As Long = xlNorthwestArrow 'xlWait Private Const DROPDOWN_ROW As Long = 1 ' Row 1 Private Const DROPDOWN_MAX As Long = 64 Private Const DROPDOWN_TIMER_REFRESH_RATE As Long = 240 Private Const DROPDOWN_EASING_SKIP_FRACTIONALS As Boolean = False 'TrueCreating your own Dropdown Preloader or Adding it to your own VBA Project
To use Dropdown Preloader in your own Projects open 'Dropdown Preloader v1.2.xlsm' (or similar version) and your own Macro-enabled Project. Then open the VBE (Visual Basic Editor) and drag the 'IEasing' Class Code Module and the the 'mdDropdownPreloader' Code Module into your own Macro-enabled file. You can of course simply insert a new Code Module or, in an existing Code Module in your own Macro-enabled file, copy and paste the Code directly from the 'mdDropdownPreloader' Code Module if you like but the fastest way is to just drag both of my Code Modules across into your own Macro-enabled Project
That's it, now add a Preloader as already detailed in the examples above. Add a Button to link the Code up to the 'DoTask()' Macro. Lastly configure the Constants in the top of the 'mdDropdownPreloader' Code Module if you want to change the Row that is resized or the easing and Speed of the easing
You will of course want to add your own tasks so you need to link up your Button to a Subroutine like the one below and then add a Call to your Subroutine/Function from within here, like this:
Public Sub DoMyTask() ' check that the Row Height of Row 1 is set to zero (0) and that the Dropdown Preloader is not running If ActiveSheet.Range("A1").RowHeight <= 0 And Not Running Then Running = True ' Drop down the Preloader ActiveSheet.Shapes("Rolling_Preloader").Visible = msoTrue DropdownPreloader ' run a Task DoEvents ' #### ADD YOUR OWN SUBROUTINE HERE ### <YOUR OWN VBA SUBROUTINE GOES HERE i.e CopyMyData()> ' Hide the Preloader DropdownPreloader Running = False End If End Sub Public Sub CopyMyData() ... <YOUR CODE> End Sub
Screen Shots
A Screenshot of the Dropdown Preloader in action as it runs a task that colours in Cells and updates the Statusbar
The Facebook-style Preloader generated and downloaded from loading.io
A Screenshot of the Dropdown Preloader in action as it runs a second task using a Rolling Preloader that colours in Cells and updates the Statusbar
The Rolling Preloader generated and downloaded from loading.io
A Screenshot of the Dropdown Preloader used with the Excel Calculation when copying and recalculating a Range using VBA. Not many indicators have the ability to interact like this
FAQ
* There are no frequently asked questions for Dropdown Preloader
Dropdown Preloader Videos
This is a video of the Dropdown Preloader Software v1 as it runs a task and displays an animated GIF Facebook-style Preloader. Music is 'No Filter - NEFFEX' (Caution: music contains explicit lyrics - listen at your own risk). View this video on YouTube
This is a video of the Dropdown Preloader Software v1 as it runs a task and displays an animated GIF Rolling Preloader. Music is 'No Filter - NEFFEX' (Caution: music contains explicit lyrics - listen at your own risk). View this video on YouTube
This is a video of the Dropdown Preloader Software v1 as it runs a task and displays an animated GIF Rolling Preloader. Music is 'No Filter - NEFFEX' (Caution: music contains explicit lyrics - listen at your own risk). View this video on YouTube
Shorts & Reels
Support
Support is 100% optional and I provide it for your convenience, so please be patient, polite and respectful
Support for my Software
- 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
- Make sure your question is a valid Software Issue and not a customization request
- Make sure you have read through the FAQ's, online documentation and any related video guides before asking support on how to accomplish a task
- 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
Remember to be patient, if there has been an issue with your download, Mark will always respond within 48 hours and will Email you the File directly if neccessary. 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
Future Builds
* No ideas as yet!
Bug Fixes
* There are currently no bugs identified for Dropdown Preloader
Changelog
Read more information on the status of each release below. The latest Version including a description of any changes is shown first
8.12.2023 - (Version 1.2)
Revision of the Code and Documentation on this site. Version incremented due to some minor Code changes and variable renaming
6.12.2023 - (Version 1.1)
Added a Demo to show how you can use this technique together with Excel's Calculation when running Code to Copy Formula (something lots of us do, well, a lot). We will execute the Preloader using Code together with Application Calculate to recalculate a Range of Formula and display Excel's Calculation Status / Progress. There are not many procedures that actually allow an indicator of any kind to run as well as displaying Excel's Calculation progress
2.12.2023 - (Version 1)
General release of Dropdown Preloader