Ojo, esa instrucción que has puesto no es de ADO.NET (que es el tema de este foro) sino de ADO a secas, que es la tecnología antigua que se usaba antes de .NET.
Podrías poner la pregunta en el foro de VB5/6. Seguramente te contestarán lo mismo que ocurriría si estuvieras usando ADO.NET: ese mensaje de error que estás viendo significa que en sqlSumarHoras has metido una sentencia SQL que contiene un parámetro,
pero has tratado de ejecutar la sentencia sin proporcionar un valor para el parámetro.