When a cat takes precedence over TCUK …

As much as I’d love to attend TCUK again this year, especially as last year’s one was so informative, I can’t attend. Instead I’ll be visiting my folks in late August for their 50th wedding anniversary.

These “none paid days off” that I get as a part of my contract, have to be thinly spread out due to the enforced 10 days off site around Xmas/New Year. I realised this a little too late last year and had to watch my days off count shrink by quite a lot as I hadn’t accounted for them. Some people like Xmas time, however, I was always the one banging on the door on Boxing Day demanding to be let back in at my old jobs.

It was either use 4 days off to go to TCUK, or use the same amount of days visiting my folks. Son (and future daughter-in-law) duties and all that.

Whilst there we will be cat-sitting their anxiety-ridden ball of fur, known locally as ‘Ted’. He really did land on his feet when he moved himself into my folks’ house and allowed them to adopt him :)

Whilst we’re there looking after him (aka ‘spoiling him rotten’ as he’s accustomed to), my folks can go away for their anniversary weekend without worrying about him stressing out.

The upside is that we get to celebrate the folks’ anniversary and catch up with friends whilst we’re there. However, we must be back at the cat’s house in the evening! There are images floating in my head of Ted, dressed like Andy Capp’s wife, standing at the door berating us for being out too late …

So, for this year, the “Mee Docs” t-shirts will have to go to the back of the wardrobe until the next time I can visit TCUK. Plus if I leave it another year, they might fit me once again…

For those attending TCUK, have a darn good time networking and learning.

All being well, I’ll be back there in 2020 :)

6 months in!

Confluence, a bit of Excel VBA, and more Confluence

I’ve now been in the same contract role for a smidgen over 6 months now. Still loving the job but also still finding out how to do ‘stuff’ that this place develops.

Once I understand that, I then have to write about it in an easy-to-read format on the relevant Confluence page(s).

Being the “go to guy” for Microsoft Office (mostly Excel, sometimes Word/PowerPoint), keeps me ticking over.

Confluence work

Along with the documentation of the tools that are developed here, I’ve also requested my own personal Confluence space for all of my musings, hints and tips and tutorials.

Within this space, I’ve created several tutorial sections which are continually being expanded upon.

Currently there are guides on:

a) Programming Excel (21 x Beginner’s level and 9 x Advanced level pages).

b) An Excel Code Library (44 x routines useful to anyone who wants to start developing their own Excel VBA-based projects)

c) A selection of pages (approximately 27 .. so far) on how to use ActivePresenter for the testers, developers and those doing demos of the various tools in use.

d) Various other “one off” pages covering hints and tips on various Microsoft Office packages and, naturally, a few pages “accidentally” pimp my Word Toolbox as a solution :)

Only “a page”?

As anyone who uses Confluence is aware, a “page” isn’t just a single sheet of A4. It’s the whole page of information that I’ve written, some being quite a *lot* longer than others.

The downside

I cannot share any of the above outside of the workplace. Those are the rules, so c’est la vie.

What else has been going on?

Dark mornings and nights

The current dark mornings and nights mean that I’ve had to “upgrade” my attire to include: a torch, a headlamp, a hi-vis over-jacket (to prevent me getting run over when I do make it onto the road near work) and a decent hat to keep me warm.

Due to the clay-like mud in the fields, especially after rain, there’s a lot of slipping and sliding. So, along with the above extras, I’ve also bought one of those bristle-type brushes to help me remove the dried up mud that sticks to my boots and trousers each day. It saves me from a few of the “evil stares” from the cleaner!

I still look forward to the last day of each week as the farmer (or his wife) give me a lift into work with the suitcase. Dragging that through the muddy fields would be nigh on impossible. That and it’s (generally) a half-day and I can head back home.

Xmas / New Year

Due to the rules in place, the contractors aren’t allowed anywhere on site during the Xmas or the following New Year weeks.

If (and only if) I can come up with a business case, then I might be able to come back for the 3 days after New Year.

But I can’t, so that’s 2 weeks (unpaid) off. The one downside to being self-employed.

To turn this into a positive, I’m taking the other half around a few places in Europe that she’s not been to during that Xmas week :)

And finally ..

I finally got around to filling in my bio for my membership of The British Beard Club.

I need to find and add more photos, as the only one up there is a selfie taken on Milton Keynes Central station one day as I was heading back oop North!

Two new ISTC articles available

The current issue of the Communicator magazine has the latest in my series on VBA User Forms. This time you get to learn all about combo boxes. It’s not exactly riveting stuff but they are a necessary evil if you want to build a decent looking user form for your own Word projects.

As it’s the 50th year of Communicator magazine, there is an additional supplement with it: “50 Years Of Change”. My second article is in there. This article covers a brief history of word processing macros. It even mentions the ZX Spectrum and the joys of Tasword 2 :)

The articles can be found in the usual place.

I’ll be back to doing a single article for the next issue. And, as much as I’ve been putting it off, I need to cover arrays. Luckily, I’ve also been working on a series of Excel VBA tutorials at my current workplace.

So that’s the basics done already!

Almost 2 months into my contract – an overview


In a change from the usual stuff I broadcast on here, here’s my “mini-review” of the first 7.5 weeks of my second contract role.

It’s been a steep learning curve in the current role but it’s been a good experience so far. Lots of my skills are being used on a regular basis (esp. Excel and Visio) which I’m glad that I’d used (and abused) in previous roles and/or whatever I’d picked up at home via online training and being self-taught. The space taken up in my head with the knowledge of previous software packages are slowly being erased to make room for the new systems that I have to learn about :)


The long and very hot summer has meant that I’ve been able to walk to/from work each day and I’m getting used to planning my weekly working times so that I can leave early on a Friday and get back to Stockport at a useful hour.

Especially if it’s a “Foodie Friday” date as I then put in some extra overtime during Monday through to Thursday to ensure that I can leave around lunchtime and get back home even earlier. All that’s left to do then is bung the week’s worth of clothes in the washing machine and be waiting in the Remedy bar before 5pm for the other half and various ex-colleagues to turn up. It’s these little things in life that are worth looking forward to when you’re ~160+ miles away :)

It’s not all been plain sailing though. There’s still a few things that I’m still finding odd and/or difficult to get my head around:

a) Living in the countryside for 4-5 nights a week. The B&B I stay in is great but if it wasn’t for the earplugs, I couldn’t sleep with the windows open at all, even in this heat. I miss and can generally sleep through the city-type noises – such as police cars whizzing along the A6 in the early hours.

However, down here in the countryside, it’s the numerous forms of wildlife letting me know that they’re active and, if they’re awake, why aren’t I?

The plus point is that I have my camera down here and I take it out occasionally and get some really nice nature-themed pictures to upload onto Instagram. I keep seeing a red kite (at least I think that’s what it is) circling the fields from time to time. Although this one seems rather skilled in detecting if I have my camera: if not, I miss all kinds of long lens shots of it circling around looking for hares. It seems to save these views for when I only have my non-optical zoom phone-based camera with me.

I’ve seen the aftermath of its kills from time to time: I’m just glad I’m too big a meal for it :)

b) The B&B I stay at is part of a dairy farm. Lots of cows = lots of manure and the “oh my god what is *that* smell” attacks on my nasal passages once in a while. I thought one week that I’d missed being overwhelmed as I saw the tractor heading down the road. Attached to it was a huge trailer full of manure, so much that it was overflowing onto the road. This ensured that there was an overpowering whiff, but breathing through my mouth got me past that. Until I got to the front of the dairy farm and *another* tractor was about to leave with another trailer-full. I nearly hughied-and-ralphed there and then! The “townie gene” is still going strong in my veins.

c) Local pubs (for local people). My first ever night at the B&B was the day before my starting date. I walked into the local village with my camera, taking shots of this and that (as amateur snappers do) and I got the first pub (out of two in the village) and went in for a pint. Cue the locals staring at me.

It was a red-hot evening, so to save any more staring, I sat outside the bar, under the shade and supped away. Then I heard the local “comedian” shout out “Hey, have you seen Father Christmas outside in the shade!”. Suffice to say that was the last time I’ll venture into that pub.

Instead, every Wednesday, myself and a couple of other contractor colleagues go to the other pub in the village and enjoy the offerings there. A local business turns up with their portable pizza oven and that makes a nice change from the various Mug-Shot “meals” I’ve been having whilst the funds dwindled away as I waited for my first pay-day ….

d) Not being paid at the end of a month is something I’ve got to get used to. After a decade of arranging all of my direct debits to come out on/just after the 28th of the month, I now have to remember to make sure that there are enough funds in my company account and that also I pay myself in time to cover it all.

If it wasn’t for my 3.5 week stint in Media City, I would have been up a particular (financial) creek without a paddle. Going from being out of work for near enough 4 months, through to having to work 6 weeks without any wage, would have been impossible. Also being able to pick up some much-needed Confluence working knowledge has helped me out a lot in the current role too. My thanks go to Auden for hiring me and enabling me to survive :)

End note:

This is all part of the learning curve for being self-employed and there will be, no doubt, many more hoops on the horizon for me to jump through.

However, the whole point of doing this is that (hopefully) I won’t have to return to being a permanent, under-appreciated, salaried staff member any time soon. Especially with some of my previous experiences that I definitely wouldn’t want to repeat, nor would I expect anyone else to have to put up with.

I still have my Redundo Tour t-shirt to remind me :)

It’s getting there (Document Overview Report)


I’ve added in Images, Shapes and Custom Styles into the report generator. So it’s coming along.

However, it’s not without any difficulties due to the way Word VBA handles the insertion of a new table. I’m still getting used to the way that it works, for example:

Normally, you find the table in your document and then edit the cells, change the formatting or whatever else you want to do afterwards.

However, when you’ve inserted a new table into a separate document (besides the to-ing and fro-ing between the two documents), you have to insert the table, then loop around and add the cell contents (from the array) and *then* you apply your choice in formatting afterwards. If you do it in any other order, it basically ignores all of your commands. This has been very confusing during the development of the reporting function.

What’s left to do

Looking at my Trello card that lists the work done and the work that I still need to do, there are a few more mini-functions to report on. I also need to tidy up the Which Fonts routine – what appears on-screen and inside the report.

I also need to include an option to skip past certain options (e.g. Fields) in the report if their count is too high, e.g. more than 100 fields. One of my test documents is very TOC-heavy as the field count goes up to 900+ entries. This breaks down to the usual field entries in the footer for page count, current page number and such like. Where it increases to silly amounts is down to the TOC. For each entry it’s one field for the actual section of the document that it’s referring to and another for the hyperlink that jumps to the correct section as well. The totals soon rack up.

I know I’ve said this before in other posts regarding this function, but it’s getting there. Honest!

New beta available (v2.1f)

I’ve finally released a beta version of the Toolbox now that the Report Overview function exports into proper tables. The full suite of reporting options aren’t in there as I’ve got to add Custom Styles, various language detection, template names and both types of image: inline and shapes. But it gives you an idea of what the function will be able to do – that is, what you would see in the Toolbox’s GUI, is now dumped out to a Word (or a PDF) document.

My next stage for the website update is to start adding videos showing how the functions work “in real life”, with proper test documents. I attended the Manchester WordPress User Group last night at MadLab for the first time last night and picked up some good hints and tips on image optimisation from one of the speakers (Kayleigh Thorpe from 34sp.com).

I also talked to her during the clinic time afterwards about using videos and she gave me some good hints and tips. Whether I use my current YouTube account, or create one specifically just for this website is a decision I’ll make at some point.

Another update on the Document Review function

It’s coming along nicely. Albeit with a lot of grey hairs being added to the head (and beard) as I split the functions apart from the listboxes into arrays.

This morning I finished moving the Fields code out of the form and into the new ‘MainLoops’ module and it, like the others before it, now uses arrays. This means the listbox can be populated as well as the report using the same data.

All that’s left to do (ha!) are: tables, images (both inline and floating) and custom styles.

What’s they’re done, then I need to investigate how to “make it look pretty” by using tables to display the data. The report does look a little bit on the ugly side when there are hundreds of fields (e.g. caused by a large Table of Contents) being dumped into the report.

When I’ve got all of the export features embedded (in their current ‘ugly’ mode) then I’ll release a beta version so that I can get some input on what other’s see when they link the report to their Normal.dotx files.

Working on a new feature: Document Report/Overview

For those technical authors (like myself) and other power Word users, there comes a time when you get a document which contains all manner of errors and problems that you need to take a step back and work out what needs fixing before diving in there.

My toolbox can help you fix those problems, but it would be better if you initially had some kind of overview ‘report’ on what is actually inside it. Whilst you can print out a list of the styles used with verbose details galore about each one, Word doesn’t offer much more.

So, to help plug this gap, the next feature to be added to my toolbox is the Report one. It’s not fully working as such, in  that it will only extract the basics such as the standard built-in properties and various statistics and counters (number of sections, tables, images etc.) and place them into a new Word document. By default this will be inside the same folder as your source document, but you can configure the destination folder.

You can also specify which Word template you would like to use with the report or, by default, it will use your current Normal.dot/Normal.dotx’s styles for the Headings et al.

As you can see from the screenshot below, it’s been placed between the main Inspection Tools and the Configuration options. What might change is the name of the function, which for now is just ‘Report’.

The full function will extract everything that my Toolbox can display, but in a Word document. In theory, you will get a document that you know has a few problems, so you generate the report first and print it out before starting to fix the problems within the document.

As soon as I’ve got a bit further with the development, I’ll post an update on here.

The latest verison (v2.0) of my Word add-in is now available

The what?

I have been developing a Word add-in called Mike’s Toolbox for the last 2.5 years within my spare time: some of it at work, some of it at home. It started out life as a small collection of macros (without any proper GUI) that would fix a number of particular annoyances that kept cropping up in documents where I work.

It is a tool for technical authors, proofreaders or those who would class themselves as ‘power’ Word users. Within the toolbox are lots of features designed to help you fix / improve any Word document. If you know of anyone else who could use this toolbox, please pass on the information about this new release.

I do not charge for this add-in, nor the full source code which I also give away with each new major version.

However, it’s not a tool that will help you create content, nor generate fancy templates. There are other add-ins out there that do that for your Word documents.

New website

Part of this release is to announce that my new website is available. I have moved everything across from the old Weebly-hosted site to the new one – my own proper domain, at last!

The full release of the add-in, including the manual can be found on the new site. Also included is the full VBA source code as a separate download for those that find this side of things interesting.

I couldn’t find a tool that would extract all the blog entries from Weebly and then import them into WordPress – so it had to be done by hand. One blog post at a time :(

The new site can be found here: www.mikestoolbox.co.uk.

New version

I’ve upped the version number to v2.0 for this release. This is partly to introduce the new website and partly to enable a better numbering scheme for my forthcoming beta versions.

What’s new?

  • The About box now points to the new website. All traces of the Weebly-hosted site have been removed from the code and the manual.
  • Added ‘Delete TOCs’ and ‘Delete Indexes’ options to the Fields Inspector function. As part of this GUI alteration, I’ve moved the Delete fields option into a new frame called ‘Delete Options’. The old frame has been renamed to ‘Field Tweaks’.
  • A request came from work colleagues for the Fix Footer option to include a facility to insert the SharePoint version number. I.e. A document is checked out and therefore it has its own internal SharePoint revision number. This number is placed into the footer instead of the contents of the Comments or Subject fields as per previous versions of my toolbox.
  • When the document is checked back in, the version number will automatically be increased by a major and/or major/minor version number by SharePoint. This saves the current document editor the task of doing it themselves.
  • In order to make room for the new Content Type functions on the Footer tab, I’ve had to do some GUI rearranging. I had to increase the size of the whole Toolbox form by about 20 pixels. This meant all of the other tabs needed some tweaks to spread them out a bit to fill the gap created, but it will mean larger list boxes on display. The changes to the Footer tab are as follows:

a) Renamed the tab from ‘Footer / Information’ to be ‘Footer / Back To Basics’ – as there’s no information included on there, just footer and back to basic tools.

b) Removed the Refresh button as all of the functions automatically refresh the display after they have completed their task.

c) Moved the ‘Odd/Even Header/Footer’ Swap option to the bottom of the form.

d) Moved the Back To Basics to be in a single line and also now at the bottom of the form.

e) Moved all of the tweaks that are possible with the Fix Footer into the one frame.

f) Moved the Fix Footer’s status outside of the tweaks area, along with the Fix Footer button and that is now larger and in red too.

g) I also added the Please Wait form to the Fix Footer function when there are more than 5 sections in the document. I will investigate where else I can place this so that you are aware of when fixes are taking place and don’t think that the Toolbox, or Word, has crashed.

  • As part of my long-awaited list of To Dos, I’ve started adding in the section type to some of the functions. First off is the Field Inspector which now displays the section type in brackets after each of the field’s content.
  • Did some shrinking of buttons within the Table Inspector toggles frame and made enough room to add a new function to toggle table borders on/off.
  • However, this doesn’t allow you to customise which of the borders are on/off, it’s just a simple on/off per selected table.
  • Removed the refresh buttons from both Endnotes and Footnotes forms. Added ‘Update’ buttons to both the Numbering Rule and Numbering Style combo boxes on both forms too. All as a result of finding that the code that updates the listbox was being called multiple times in the previous releases. The Convert and Delete buttons have been laid along the same horizontal line too.
  • Added a simple display option for any Building Blocks found inside a Word template file. It’s a ‘no thrills’ option which I hope to improve over time.
  • Removed the Read-Only/Read-Write status check that appeared underneath the main Toolbox form. The read-write status of the current document is now done, as per all the other Inspector tools, prior to launching the function. This enabled me to remove about 15 different checks of the status that were inside the main Toolbox’s code.

That’s all that’s new. More details will be in the manual.

What’s been fixed?

  • A bug was found in the Field Inspector when I added an index to the manual – mainly because I’d never created/used indexes in a Word document before. The Field Inspector had made some assumptions about index entries and that’s now been fixed.
  • Fixed an odd bug in the Endnotes/Footnotes code that created the listbox. For some reason I was calling the routine to populate the list box three times in a row due to the use of ‘_Change’ event each time. So, for example, if there were 4 endnotes found, they were being listed as 12. The four endnotes and 8 blank entries. Bug quashed!
  • The Section, Field and Table Inspectors weren’t checking if multiple documents were open. They do now.
  • I’d not included a description in this manual to cover the Odd/Even Header/Footer option in the Footer / Back To Basics tab. Oops!

That’s the list of bug fixes that were hanging over from the previous version.


I have learned a lot about optimising my VBA code during the update from the previous version (v1.89) to this new version. So much so that some of it will feature in my next article for the ISTC magazine, Communicator.

To save boring you with examples of code, all of the optimisations can be found in the Change History section of the manual.

All in all, the optimisations have helped to shrink the add-in down by quite a margin. The v2.0 of this add-in is now smaller than the previous release (v1.89) but includes new features, along with the bug fixes. The VBA source code is shorter too, by almost 400 lines of code/comments and line spacing.