Is there a way in VBA to know about variables that aren't being used?

MZ-Tools will search through your code and tell you what is not being used. The version for VBA can be found here.

The specific feature in MZ-Tools that performs what you asking about is Review Source Code:

The Review Source Code feature allows you to review the source code to detect some unused declarations (constants, variables, parameters, procedures, etc.).


Another method (because I don't have admin privileges to install that software), is to put Option Explicit at the top of your module. Then comment out all the Dim'med variables, and debug through your code with F8 or recompile with Alt+d+l

Uncomment the Dims one by one until Option Explicit returns no compiler errors, at which point any variables still commented out can be ignored, as they are not used in your code


Similar to MZ-Tools, RubberDuck has a VariableNotUsed Inspection (amongst many other things) that should show precisely what you're after. It's free and, as of v2.2.0.3086, it supports non-admin installation.