The Big Ol' List of Rules

Descriptions and examples for each of the rules in VBA Linter.

Created by Kevin Nowaczyk. For helpful tips on VBA and software development, follow me on X.

100 Character Errors

E111 Multiple spaces before keyword
E114 Multiple spaces after keyword
E120 Missing whitespace before '('
E121 Excess whitespace before '('
E124 Excess whitespace after '('
E131 Excess whitespace before ')'
E133 Missing whitespace after ')'
E134 Excess whitespace after ')'
E141 Excess whitespace before ','
E143 Missing whitespace after ','
E144 Multiple spaces after ','
E150 Missing whitespace before '='
E151 Excess whitespace before '='
E153 Missing whitespace after '='
E154 Excess whitespace after '='
E161 Excess whitespace before ':='
E164 Excess whitespace after ':='
E170 Missing whitespace before arithmetic operator
E171 Multiple spaces before operator
E173 Missing whitespace after arithmetic operator
E174 Multiple spaces after operator
E180 Missing whitespace before comparison operator
E181 Excess whitespace before comparison operator
E182 Incorrect comparison symbol format
E183 Missing whitespace after comparison operator
E184 Excess whitespace after comparison operator
E191 Excess whitespace before ':'
E193 Missing whitespace after ':'

200 Parameter / Keyword errors

E220 Keyword not capitalized

300 Expression Errors

400 Line Errors

E400 Incorrect line ending

500 Control Structure / Statement Errors

E501 Line too long (82 > 79 characters)
E502 The backslash is redundant between brackets

600 Procedure Errors

700 Module Errors

E701 Multiple statements on one line (colon)
E702 Multiple statements on one line (semicolon)
E703 Statement ends with a semicolon
E704 Multiple statements on one line (def)
E711 Comparison to None should be 'cond is None:'
E712 Comparison to true should be 'if cond is true:' or 'if cond:'
E713 Test for membership should be 'not in'
E714 Test for object identity should be 'is not'
E721 Do not compare types, use 'isinstance()'
E722 Do not use bare except, specify exception instead
E731 Do not assign a lambda expression, use a def
E741 Do not use variables named 'I', 'O', or 'l'
E742 Do not define classes named 'I', 'O', or 'l'
E743 Do not define functions named 'I', 'O', or 'l'

900 Syntax Errors

E901 SyntaxError or IndentationError
E902 IOError
E999 SyntaxError