1

わかった!次に、コードに直接!

コード:

Const adOpenStatic = 3
Const adLockOptimistic = 3
Const adCmdText = &H0001

Set objConnection = CreateObject("ADODB.Connection")
Set objRecordSet = CreateObject("ADODB.Recordset")


objConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
    "Data Source=C:\Users\HV\Desktop\samp.xls;" & _
    "Extended Properties=""Excel 8.0;HDR=Yes;"";" 

objRecordset.Open "Select * FROM [Sheet1$]", _
objConnection, adOpenStatic, adLockOptimistic, adCmdText

objRecordSet.delete 1

エラーメッセージ :

http://s14.postimage.org/fntmbde0x/err.jpg

XLS:

http://s7.postimage.org/4oklf867f/xls.jpg

私が期待しているのは、レコードセットから最初のレコードを削除することです。XLSに更新されないレコードセットのみを覚えておいてください。どんな助けでも大歓迎です:)

4

1 に答える 1

0

切断されたレコードセットが必要です。

  1. Recordset.CursorLocationに設定adUseClient

  2. レコードセットを開き、行をフェッチします

  3. に設定Recordset.ActiveConnectionNothingます。

これで、レコードセットからレコードを削除できます。

Const adOpenStatic = 3
Const adLockOptimistic = 3
Const adCmdText = &H1
Const adUseClient = 3
Set objConnection = CreateObject("ADODB.Connection")
Set objRecordSet = CreateObject("ADODB.Recordset")


objConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
    "Data Source=C:\samp.xls;" & _
    "Extended Properties=""Excel 8.0;HDR=Yes;"";"
objRecordSet.CursorLocation = adUseClient
objRecordSet.Open "Select * FROM [Sheet1$]", objConnection, adOpenStatic, adLockOptimistic
Set objRecordSet.ActiveConnection = Nothing
objConnection.Close
objRecordSet.Delete 1
于 2012-05-08T07:26:08.253 に答える