看了你的代码,主要是因为你使用了联合查询的原因导致的,要达到你的目的可用两种方法,代码分别如下(均已调试通过):
一、掩耳盗铃方法:这种方法并不真正删除记录而是把要删除的记录屏蔽掉,但你要改进你的打印代码,你excel是拷贝记录集的,会把已经屏蔽的记录原本拷贝。
Private Sub Command7_Click()
If Adodc1.Recordset.EOF = True Then
MsgBox "没有记录可供删除!", vbOKOnly, "温馨提示"
Else
If MsgBox("你真的不需要打印【" & Trim(订单编号) & "】这个订单编号的送货单吗?", vbOKCancel, "温馨提示") = vbOK Then
If Adodc1.Recordset.Filter = 0 Or Adodc1.Recordset.Filter = "" Then
Adodc1.Recordset.Filter = "订单编号<>'" & Trim(订单编号) & "'"
Else
Adodc1.Recordset.Filter = Adodc1.Recordset.Filter & " and 订单编号<>'" & Trim(订单编号) & "'"
End If
MsgBox "删除订单编号成功", vbOKOnly, "温馨提示"
End If
End If
End Sub
二、分别处理法:这种方法会真正删除出库单记录,打印代码无需更改(把你提供的实验记录都删了,恢复麻烦)
Private Sub Command7_Click()
Dim con As New ADODB.Connection, a As String
If Adodc1.Recordset.EOF = True Then
MsgBox "没有记录可供删除!", vbOKOnly, "温馨提示"
Else
If MsgBox("你真的不需要打印【" & Trim(订单编号) & "】这个订单编号的送货单吗?", vbOKCancel, "温馨提示") = vbOK Then
con.Open Adodc1.ConnectionString
If con.State <> 1 Then
MsgBox "数据库连接失败"
Exit Sub
End If
a = "delete 出库单 from 出库单 where 订单编号='" & Trim(订单编号) & "'"
con.Execute a
Adodc1.Refresh
con.Close
MsgBox "删除订单编号成功", vbOKOnly, "温馨提示"
End If
End If
End Sub
一、掩耳盗铃方法:这种方法并不真正删除记录而是把要删除的记录屏蔽掉,但你要改进你的打印代码,你excel是拷贝记录集的,会把已经屏蔽的记录原本拷贝。
Private Sub Command7_Click()
If Adodc1.Recordset.EOF = True Then
MsgBox "没有记录可供删除!", vbOKOnly, "温馨提示"
Else
If MsgBox("你真的不需要打印【" & Trim(订单编号) & "】这个订单编号的送货单吗?", vbOKCancel, "温馨提示") = vbOK Then
If Adodc1.Recordset.Filter = 0 Or Adodc1.Recordset.Filter = "" Then
Adodc1.Recordset.Filter = "订单编号<>'" & Trim(订单编号) & "'"
Else
Adodc1.Recordset.Filter = Adodc1.Recordset.Filter & " and 订单编号<>'" & Trim(订单编号) & "'"
End If
MsgBox "删除订单编号成功", vbOKOnly, "温馨提示"
End If
End If
End Sub
二、分别处理法:这种方法会真正删除出库单记录,打印代码无需更改(把你提供的实验记录都删了,恢复麻烦)
Private Sub Command7_Click()
Dim con As New ADODB.Connection, a As String
If Adodc1.Recordset.EOF = True Then
MsgBox "没有记录可供删除!", vbOKOnly, "温馨提示"
Else
If MsgBox("你真的不需要打印【" & Trim(订单编号) & "】这个订单编号的送货单吗?", vbOKCancel, "温馨提示") = vbOK Then
con.Open Adodc1.ConnectionString
If con.State <> 1 Then
MsgBox "数据库连接失败"
Exit Sub
End If
a = "delete 出库单 from 出库单 where 订单编号='" & Trim(订单编号) & "'"
con.Execute a
Adodc1.Refresh
con.Close
MsgBox "删除订单编号成功", vbOKOnly, "温馨提示"
End If
End If
End Sub