This is definitely bug or as always m$oft ignorance and amateur. There is no logic to treat declaration "Dim a, b, c As Single" as you said "Dim a As Variant, b As Variant, c As Single" not just in programming rules but every possible normal understanding. It's like saying Adam, Richard, Stefan is a man but Adam and Richard are some variation! Micro$oft is a total destruction of all principles, logic and good practices and especially professionalism in creating any solution. They create, steal and take ideas from others effectively introducing “ another version of visual basic”. I always going to use in separated lines, just for sure what happen in the future.