RE:ALgo sobre Begin transaction
OK empecemos...
Dices que utilizas una conexion ADO....
Entonces...
Dim Cnx as new ADODB.Connection
Cnx.BeginTrans
'Aqui van tus consultas de Accion Ejecutandolas con el metodo Execute de tu conexión
*Nota es Recomendable que definas la variable en la que se almacenarán el numero de registros afectados por cada query para de esta manera saber si tus consultas están afectando el numero de registros que deben...si las operaciones fueron correctas ejecutas el metodo commitTrans de tu conexion y si fue caso contrario...ejecutas el metodo rollbackTrans que le da marcha atrás a todas las sentencias ejecutadas despues del begintrans...
y recuerda que siempre debes cerrar de cada begintrans con un commit o un rollback...