2017-07-31 1 views
1

レコード全体ではなく、見つかったレコードセット内の値を1つ削除しようとしています。 この例では、私は削除する:レコードセット内の特定の値を削除する、レコード全体ではない

[" & TempVars("Software") & "]='" & TempVars("Version").Value & "'" 

それはエラーなしでレコードを検索します。それは私が望むものではない全体のレコードを削除するだけです。私はちょうどソフトウェアのバージョンを削除する必要があります。

これは私のコードです:

Dim rst0 As Recordset 
    Set rst0 = CurrentDb.OpenRecordset("SoftwareLicenses", dbOpenDynaset) 

    rst0.FindFirst "[SWID] = " & TempVars("SWID").Value & " AND [EmpID] = " & TempVars("EMPID").Value & " AND [SWVersion]= '" & TempVars("Version").Value & "'" 

    rst0.Delete 
    rst0.Close 
    Set rst0 = Nothing 


    Dim rst2 As Recordset 
    Set rst2 = CurrentDb.OpenRecordset("EmpSWDetails", dbOpenDynaset) 

    rst2.FindFirst "[EmpID] = " & TempVars("EMPID").Value & " AND [" & TempVars("Software") & "]='" & TempVars("Version").Value & "'" 

    rst2.Delete 
    rst2.Close 
    Set rst2 = Nothing 

あなたの助けを本当に感謝しています。

+0

は、私が「!RST2 [&TempVars私は.Editを使用して試してみたことも考えた(」ソフトウェア」)&] = 『』私は、コレクションのエラーではないアイテムを取得。それがしたいようには見えませんtempVarを取り込みます。通常の変数に変換しても、それを取り込みます。 –

+0

レコード内の単一のフィールドを削除することはできません。それは意味がありません。フィールドを「NULL」に設定しますか? – YowE3K

答えて

0

フィールド値を削除する代わりに、レコードセットの変数を正しい方法で宣言して編集しました。

rst2.Edit 
rst2.Fields(Software) = "" 
関連する問題