“OMG I CAN DO VB6 IN EXCEL! WATCH ME!!!” – Mathieu Guindon about VBA 15 years ago

Mathieu Guindon is the project manager behind Rubberduck  an open-source COM add-in project written in C#, extending the glorious VBE with modern-day IDE features.  On Code Review and Stack Overflow he is closely monitoring the  tag. Ex-moderator on Code Review  (2015-2018), Microsoft Excel MVP (2018).


  • Describe yourself with 3 sentences (or 3 words) ?
    I too often talk too much, with too little thinking – call that “spontaneous”?; wannabe-programmer; wannabe-musician.
  • When did you start to code with VBA? How much experience with Excel or programming did you have already, before writing your first code in VBA. How did you hear about it?
    I learned VB first with VB4 in, uh, 1998 I think. So when I got an office job in 2004 with Excel 2003 as my primary tool, didn’t take too long to discover a VBE very similar to that of VB6, and that’s when I started automating parts of my job.
  • What was you first idea about it? Did you like it immediately or you had to wait for a year or so?
    OMG I CAN DO VB6 IN EXCEL! WATCH ME!!!
  • Do you hear a lot of people saying that VBA is not real programming (whatever “real programming” means, I hear it probably every second month). What do you think about it? (Although you are a C# programmer, but still…)
    I think the vast majority of these folks don’t know what they’re talking about, and blame VBA for the 1998-ness of the VBE. Inheritance is massively over-rated. (Added by VitoshAcademy – this answer of Mathieu  explains OOP in VBA quite well –  https://stackoverflow.com/a/31861832/5448626)
  • Do you think that there is a gap in the IT-industry for good VBA programmers – not many good programmers code in VBA (or have even heard about it) and the people who code in VBA are usually advanced excel users (if you compare the knowledge of the VBA coders with Java coders for example).
    There is. Hopefully Rubberduck will get to a point where it’s just a de-facto must-have VBE add-in that everybody knows about, and then we’ll be seeing fewer implicit ActiveSheet bugs, implicit default member calls, and implicit code in general, and more VBA code that says what it does, and does what it says, both in Stack Overflow questions and Stack Overflow answers. VBA remains the single best available tool for many things. I figure I must be one of a handful of IT workers in Canada regularly coding in VBA. I code in C# as well, and learning .NET a little less than a decade ago has tremendously improved my VBA coding. It’s not the language, it’s the coder: VBA folks need to step up their game and learn & apply some OOP principles and modern coding practices. Call me crazy but I find OOP-VBA rather awesome to debug and maintain.


Tagged with: ,