No hay niguno, pero a mí me ha resultado tremendamente efectivo utilizar buscar/reemplazar de MS-Word
Sucede que VisualBasic no tiene la misma estructura (lineal) de lascal y pascal no maneja eventos ni soporta controles. Si quieres 'traducir' de pascal a VB, reemplaza cada write o writeln por msgbox, cada read o readln por inputbox, elimina todos los punto y coma (

, cambia ':=' por '=', reemplaza real por double, en lugar de dos puntos (

en las declaraciones utiliza 'as', etc.
En fin escribe tu programa de nuevo en VB, y aún así te queda algo muy antiestético que solo funciona en un form sin controles y a puro cuadro emergente.
Lo mejor es tomar un programa en pascal y buscar la forma de hacerlo más bonito en VisualBasic, pero no hay traductor, ni método estándar, ni formula mágica, ni nada de eso.

¡A programar se ha dicho!
