Join GitHub today
The VBE's Project Explorer was nice... in 1999. Get the same bird's eye view of your project and navigate anywhere, with the Code Explorer dockable toolwindow:
This tree view drills down to member level, so not only you can see modules with their properties, functions and procedures, you also get to see a module's fields, constants, enums (and their members) and user-defined types (and their members) - without having to bring up the object browser.
Ever wish you had a task list built into the VBA IDE? You don't have to wish anymore: it's here! Rubberduck searches your code for
TODO: comments (or whatever you configure as "todo" markers) and displays them all in a convenient dockable toolwindow. Double-click on an item in the list to navigate to that location in the code.
Rubberduck comes with default markers and priority levels, but that's 100% configurable.
Fully integrated unit testing, with zero boiler plate code (a little comment doesn't really count, right?). Use late-binding to create a
Rubberduk.AssertClass object, or let Rubberduck automatically add a reference to its type library, and start writing unit tests for your VBA code:
'@TestModule Private Assert As New Rubberduck.AssertClass '@TestMethod Public Sub MyMethodReturnsTrue() Assert.IsTrue MyMethod End Sub Public Sub TestReferenceEquals() Dim collection1 As New Collection Dim collection2 As Collection Set collection2 = collection1 Assert.AreSame collection1, collection2 End Sub
'@TestModule marker is merely a hint to tell Rubberduck to search that module for test methods; the
'@TestMethod marker isn't needed if the method starts with the word
The Test Explorer dockable toolwindow lists all tests found in all opened VBProjects, and makes it easy to add new test modules and methods - and run them:
Find various code issues in your code - and fix them, with just a few clicks!
In the event where you would have too many docked windows, Rubberduck offers you a toolbar to quickly navigate and fix code issues:
Clean up VBA code by extracting methods, renaming identifiers, etc.
GitHub/Source Control Integration
Push VBA code to your favorite GitHub repository in separate code files, and pull commits into the IDE, straight from the IDE.