У вас должен быть весь исходный код для EXE и двух DLL. Вы добавляете все проекты в один групповой файл, то есть VBG. У вас должна быть ссылка в проекте EXE на первую DLL. Я понятия не имею, почему вам сказали, что вы должны удалить их. В первом проекте DLL должна быть ссылка на второй проект DLL. VB достаточно умен, чтобы молча заменить ссылку DLL ссылкой на проект. Это также достаточно умно, чтобы молча заменить ссылку проекта ссылкой на DLL, если вы удаляете проект DLL из группы проектов.
Убедитесь, что для обработки ошибок установлено значение «Разрыв всех ошибок» или «Разрыв в классе».
Ошибка несоответствия типов может возникать из-за простых вещей, таких как присвоение нечисловой строки числовой переменной. Это становится более сложным, если вы передаете объектные ссылки. Если вы видите, что эта ошибка возникает на что-то вроде:
Set myObject = someOtherObject
... и выглядит так, будто они должны быть одного типа, это может быть очень сложно. Но сначала я позволю вам сделать отладку.