Assuming you have ADO code that is working and you just want to add transactions, just add the BeginTrans and CommitTrans method invocations in your code on the connection object doing the data access. Put the BeginTrans before your database modifications and the CommitTrans after the last Update. If there are errors and you want to roll back everything since the BeginTrans, then put a RollbackTrans in the error handler. The RollbackTrans method removes all the modifications to the data since the last BeginTrans.
Additional notes:
You can do modifications to any tables/queries in the database that are accessed by that connection object and all the modifications to all the tables/queries are committed or rolled back together. This is actually the big strength of the transactions; to keep multi-table updates in sync. If one table update fails, you won't want the other table that is related to succeed and have "dangling" table entries.
Also, Transactions are sort of "time sensitive". If you have a MsgBox or open another form while a transaction is "open", it will commit automatically and you won't be able to roll it back. Since the transaction is based on the image of the database at the moment the transaction starts, it will lock the affected rows in all the tables until the commit. It won't hold these locks, for example, while the user reads a MsgBox to make some decision. You also can't single step through the code debugging in a transaction and expect a roll back at the end to work correctly. As soon as a breakpoint is hit, the transaction commits.
Here is a mini example for a connection called gDBConn:
================
< I have two recordset variables RS1 and RS2 that
point to two tables I want to keep synchronized. >
< Get and validate some data off a form >
on error goto baggit
gDBConn.BeginTrans
RS1.AddNew
RS1("MemberName"

= tMemberName
RS1("MemberSince"

= now
RS1.Update
RS2.AddNew
RS2("MemberID"

= RS1("ID"

RS2("ProductID"

= tProductID
RS2("Price"

= tPrice
RS2.Update
gDBConn.CommitTrans
Exit Sub
baggit:
gDBConn.RollbackTrans
Exit Sub
================
This code will only update the tables if BOTH tables can be updated successfully. If either update fails, neither table is affected.
Hope this helps,
Steve.