質問: DateAdd("yyyy", -1, a(r, 1)) がデバッグになってしまいます。
回答: 空白セルは、「どの数字よりも大きい」という扱いになります。 なので、 > Date が成立してしまい、 DateAdd("yyyy", -1, a(r, 1)) を空白セルで行おうとしてエラーになるのでは?