Dictionary - это конечно хорошо, но как это можно использовать когда у меня коллекция, скажем, control.properties?
Проверка чего-либо методом генерации ошибки - метод достаточно универсальный. Только у него есть минус. Скажем, отлавливается реальная ошибка, а в процедурах стоит инструкция On Error. Как тогда понять, на какой строке кода сбоит? Можно закомментить On Error, но проще поставить Break On All Errors в опциях редактора VB. Но тогда он будет прерываться на всех ошибках. Поэтому я предпочитаю писать код так, чтобы ошибки не генерились.