tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル ADOによるExcel操作でのトランザクション
投稿日: 2008/07/25(Fri) 19:42
投稿者モウリーニョ
お世話になります。

現在、VB2005にて、ADOを用いてローカルのExcelファイルにデータを出力する処理を行っています。
その処理において、トランザクションにて管理したいと思っているのですが、
どうもうまく動いてくれません。(エラーは出ないが、Insertが行われている。)

コードは下記のようになります。

Dim con As New OleDbConnection
Dim cmd As New OleDbCommand
Dim tra As OleDbTransaction

Dim filePath As String = "C:\TEST.xls"

con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" + _
                            "Data Source=" + filePath + ";" + __
                            "Extended Properties=""Excel 8.0;HDR=YES;"""

con.Open()
tra = con.BeginTransaction()
cmd.Connection = con
cmd.Transaction = tra

cmd.CommandText = "INSERT INTO [sheet1$] VALUES('TEST', 'ETC')

cmd.ExecuteNonQuery()

tra.Rollback()

con.Close()

上記ソースでは、'TEST'と'ETC'が挿入されない結果が得られると思ったのですが、入ってしまってます。

いろいろと調べてみたのですが、明確な答えにたどり着けておりません。
参考情報等でもよいので、教えていただければと思っております。

よろしくお願い致します。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。