Installing Smart Indenter in Office 2013-2016

Joe Howard
CERTIFIED EXPERT
A man of stark contrasts, love of nature, curiosity of technology and passion of helping my fellow man.
Published:
Updated:
Since upgrading to Office 2013 or higher installing the Smart Indenter addin will fail. This article will explain how to install it so it will work regardless of the Office version installed.
Overview
One of the most useful tools in the VBA\VB Classic developers arsenal is Office Automation Ltd’s Smart Indenter. This extremely powerful, yet small, lightweight and free VBE COM addin, is a must(!) for any serious VBA\VB Classic developer. Using it you can with the click of a button properly indent your code to improve the code legibility and standardization. It offers numerous customizable options to suit your habits and personal taste.

Summary
Unfortunately, it cannot be installed properly with MS Office version 2013 and higher. Inspecting the addin's install log will show where the error occurred:
Could not Self-Register: C:\PROGRA~2\OFFICE~1\SMARTI~1\VBA6\INDENT~1.DLL

Open in new window


Cause
This issue occurs because the Smart Indenter addin was built in VB6 and interfaces with the latest version (6.1.98.16) of a dll file (msaddndr.dll) which was  discontinued by Microsoft and therefore is no longer installed with MS Office.


Solution


The solution is to manually copy msaddndr.dll to your computer before installing Smart Indenter.

1. Delete the msaddndr.dll file from the following location:

In a 32-bit version of an operating system:

%commonprogramfiles%\DESIGNER

In a 64-bit version of an operating system:

%commonprogramfiles(x86)%\DESIGNER

2. Copy the msaddndr.dll file to the aforementioned location.
3. Install IndenterVBA.exe
 

You can copy msaddndr.dll from an old system or download it from www.dll-downloader.net 
The addin can no longer be downloaded from the developers website. Therefore the author of this article has uploaded it to Google Drive. The addin, dll and this article can be downloaded from here.

Alternative Solution
Some users have reported that installing Mz-Tools before installing Smart Indenter solved the problem, while others reported that it made no difference.
Investigating these reports, it seems that installing Mz-Tools will only solve the problem if msaddndr.dll does not exist on the system. The explanation for this is that Mz-Tools will only copy the msaddndr.dll file if it doesn't exist, but if an earlier version does exist it won't be over-written. Since Smart Indenter needs the last version of msaddndr.dll (6.1.98.16) it won't work.
The free version (3.0) of Mz-Tools is lo longer available from their website, but can be downloaded from Google Drive.

Disclaimer
The author of this article has no vested interest in Smart Indenter or Mz-Tools. Smart Indenter is freeware which is no longer supported by its developer due to his retirement back in 2005. Mz-Tools version 3.0 is freeware but is no longer available from their website. This article was written after its author finally figured out how to properly install the addin after struggling with it for quite some time.
2
16,512 Views
Joe Howard
CERTIFIED EXPERT
A man of stark contrasts, love of nature, curiosity of technology and passion of helping my fellow man.

Comments (8)

MZ Tools worked perfect for me ...
When trying to find the correct version of msaddndr.dll it was quite difficult.
Also installing VB6 SP2 means you should have vb6 installed on your machine which was not my case ...
Gracias por este artículo que me ayudó enormemente a instalar nuevamente Smart Indenter, ya que lo tenía instalado en office 2003 con XP y hace unos meses (jajaja) me actualicé a W7 y sigo programando con Access 2003 (estoy grande para seguir aprendiendo) pero no conseguía hacer funcionar el Indenter.
Me daba error cuando el instalador pretendía registrar la dll. Así que me bajé la versión de la Dll que está incluida en el enlace de mas arriba y tampoco andaba.
Como tengo el XP todavía instalado (en otro disco) busqué msaddndr.dll en mi XP. Es una versión (6.00.8169) anterior a la que aquí se menciona y que en mi anterior instalación funcionaba, así que instalé esa dll en la carpeta DESIGNER en mi W7.
Luego borré las instalaciones de MZTools y de SmartIndenter que aún estaban para iniciar las instalaciones nuevas desde cero.
Reinicié el equipo y procedí a la instalación primero de MZTools y luego con SmartIndenter, ambas instalaciones desde la opción botón derecho, ejecutar como administrado y voilá!!!!

Gracias. Gracias Gracias. Gracias Gracias. Gracias
Thanks for this article that helped me enormously to install Smart Indenter again, since I had it installed in office 2003 with XP and a few months ago (hahaha) I upgraded to W7 and I'm still programming with Access 2003 (I'm great to keep learning) but not I managed to make the Indenter work.
It gave me error when the installer tried to register the dll. So I downloaded the version of the Dll that is included in the link above and neither walked.
As I have the XP still installed (on another disk) I searched for msaddndr.dll on my XP. It is a version (6.00.8169) previous to the one mentioned here and that in my previous installation it worked, so I installed that dll in the folder DESIGNER in my W7.
Then I deleted the facilities of MZTools and SmartIndenter that were still there to start the new installations from scratch.
I rebooted the equipment and proceeded to the installation first of MZTools and then with SmartIndenter, both installations from the right button option, run as managed and voila!

Thank you. Thank you. Thank you. Thank you. Thank you. Thank you
CERTIFIED EXPERT

Author

Commented:
I'm glad my article helped you.
Please up-vote the article by clicking on the thumbs-up icon at the end of the article.
I tried the steps in both the alternatives that have been mentioned, but couldn't resolve the "Could Not self-register" issue.  Even granting admin rights to my user login didn't work. I even had trouble installing MZTools 3.0 from the link provided.  There was an error returned when registering the MZTools DLL.

So I went searching on the MZTools website and found that they have developed an indenter  for various IDEs, however, it is a 30 day trial version.  I have installed the trial version to test out its features.  They do have some additional options, which can come handy.

Edit (Aug 11, 2018):  So I have been trying to install SmartIndenter all day using all permutations and combinations, and finally it did install with a successful Self-Register.  However it doesn't show in the Add-In Manager in the Excel VBE.  Looks like I'm having the same problem as Chi Is Current.  My system's config is Win 10 and Office 365.  Any clues on getting this wonderful free add-in to work would be appreciated.

Edit (Aug 12, 2018):  There is a product called RubberDucky that does the same job as SmartIndenter, not too clean, but gets the work done.  But it slowed down my VBE quite significantly, don't know the cause of the slow down though.  If you can't use SmartIndenter and need another free app to beautify your code, then this is one alternative.  It's just not for me.  Would love to have the SmartIndenter back :(

View More

Have a question about something in this article? You can receive help directly from the article author. Sign up for a free trial to get started.