じゃあこれでいいんじゃね?

  Dim objConnection As ADODB.Connection
  Set objConnection = New ADODB.Connection
  Call objConnection.Open
  Call objConnection.BeginTrans
  Call objConnection.CommitTrans
  If Err.Number <> 0 Then
    If objConnection.State = ADODB.adStateClosed Then
      Call objConnection.RollbackTrans
    End If
  End If
  If objConnection.State <> ADODB.adStateClosed Then
    Call objConnection.Close
  End If