RE:bloqueo de registros en VB
En gran medida esto dependera de la base de datos que uses.
Sql Server creo que soluciona esto bastante bien.
Si usas Access:
Procura mostrar las tablas en modo Snapshot, solo lectura.
De este modo pueden haber muchos usuarios viendo la misma tabla.
Cuando quieras guardar o modificar un registro. Abres la tabla en modo snapshot, para mostrar los datos. Cuando se haga clic en buscar comprueba que otro no ha modificado la tabla, cierras el modo snapshot y la abres en dynaset o table.
Si tienes mas dudas mandame un mail, te puedo facilitar algun programa para que lo veas.