Introducing CSS Loader

CSS Loader - use as a Progress Indicator to display an animation during the completion of a task for Excel

Set your Colour and then output the Indicator whilst running your task. Change the Colour of the spinning Circle anytime if you wish. CSS Loader has been designed to work on a light Excel background only. It is based upon a Perpetual Motion Machine CodePen by mkanzit and has been ported and modified for the IE WebBrowser Control and then customised especially for Excel using VBA by Mark Kubiszyn


  • Excel 2013 (Version 5) & Excel 2016 (32bit or 64bit, Version 8)
  • Basic to moderate Excel Skills and some VBA skills to copy the Class Module and add a Code example
  • Windows PC · NOT a Mac!
  • No support is provided for customization of this Software


  • Change the colour of the spinning Circle during transition
  • Run your tasks in Excel whilst the CSS Loader is displayed. Code uses minimal HTML/CSS

Installation is ready to use (version specific naming of the file will differ with each new release). Open the CSSLoader.xlsm File and test out the Demo. To use CSS Loader in your own Project, just open CSSLoader.xlsm and your Project and then go into the VBE Editor. Drag the ICSSLoader Class into your Workbook and then just add the example remembering to declare the Private Running local variable at the top of your own Code Module. That's it...



The Demo Sheet

Code for the CSS Loader
Using the CSS Loader is easy. The Class members .Indicator(), .ChangeColour() and .Kill() are all that you need. The first Class member, .Indicator() runs the animation and takes two Parameters. The first Parameter, AppFocus determines whether or not the Application gets focus after the animation has began, you can choose True or False. The second Parameter, HTMLColour is a HTML Colour Code passed as a String ie. "#879" to change the Colour of the spinning Circle. The second Class member, .ChangeColour() takes a HTML Colour Code as a String similar to the second Parameter in the first Class member to change the Colour of the spinning Circle. The third Class member, .Kill() stops the animation and terminates the Class. Here is the full Code for the Demo:
Public Sub Default_Indicator()
   If Running Then Exit Sub
   Running = True
   Dim Progress As ICSSLoader
   Set Progress = New ICSSLoader
   ' start the Loader.  because we are not waiting on any specific animation, we don't need to call any JavaScript during this routine
   ' other than to change the Circle Colour if req.
   With Progress
      .Indicator False
   End With
   ' simple pause
   Dim MyTimer As Double
   MyTimer = Timer
   Loop While Timer - MyTimer < 8

   With Progress
      .ChangeColour "#222222"
   End With
   MyTimer = Timer
   Loop While Timer - MyTimer < 8
   ' end the Indicator
   With Progress
   End With
   Set Progress = Nothing
   Running = False

End Sub   
The Result
Using the above Code you can see the Results below as the CSS Loader is displayed and then changes Colour as the transition is ran:

CSS Loader

CSS Loader just as the Heart-beat Animation kicks in

CSS Loader just as it starts up without the Heart-beat Animation


There are no Q & A for the CSS Loader

CSS Loader

This is a video of the CSS Loader in action


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

  • 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
...or Contact Mark Kubiszyn via our Facebook Page - 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 or via Messenger. 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


You can find the version history in the Code Module for any Macro-enabled Software or read more information on the status of each release
- the latest Version including a description of any changes made is always shown first

01.12.2020 - (Version 1) Released

General release of the first version of CSS Loader