Private Sub Command_3_Click()
Dim intYesNo
Frame_add.Visible = False
DataGrid1.AllowDelete = True
If DataGrid1.SelBooks.Count = 0 Then
MsgBox "请选择一条记录以供操作!", vbOKOnly + vbExclamation, "注意!"
Exit SubElseIf CZLX = 1 Then
Adodc1.RecordSource = "select *from tb_BasicInformation"
Adodc1.Refresh
intYesNo = MsgBox("确实要删除这条参数吗?", vbYesNo + vbExclamation, "注意!")If intYesNo = vbYes ThenDim varBmk As Variant
For Each varBmk In DataGrid1.SelBooks
Adodc1.Recordset.Book = varBmk
Adodc1.Recordset.Delete
Adodc1.Recordset.UpdateBatch
Next
End If
DataGrid1.Refresh
Adodc1.RecordSource = "select *from tb_BasicInformation"
Label_Num.Caption = Adodc1.Recordset.RecordCountvb datagrid 同时删除几行

解决方案 »

  1.   

       dim BK as variant
        With TxGrid
            For i = .SelBooks.Count - 1 To 0 Step -1
                BK = .SelBooks(i)
                rsData.Book = BK
                rsData.Delete
            Next
        End With
      

  2.   

    1楼应该是正确的啊,测试了可以……  Dim vI As Integer
        For vI = DataGrid1.SelBooks.Count - 1 To 0 Step -1
          Adodc1.Recordset.Book = DataGrid1.SelBooks(vI)
          Adodc1.Recordset.Delete
        Next
      

  3.   

    我的怎么就是不行啊
    Adodc1.RecordSource = "select *from tb_GetOut"
            Adodc1.Refresh
            Adodc1.Recordset.Delete
            Adodc1.Recordset.Update
            DataGrid1.Refresh
            Adodc1.Refresh
    这么一段程序倒是有反应,但是虽然选定了一行,但是总是删除的第一行,1l和3l的都没有反应啊,这是为什么啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊。要疯了
      

  4.   

    你没有指定要删除哪一行啊?对Delete,不需要Refresh和Update
      

  5.   

    好了,谢谢楼上的大神,,你们的代码都可以,是我的代码有问题,问题在于
    Adodc1.RecordSource = "select *from tb_BasicInformation"
     Adodc1.Refresh
    这一句,反正删了就行了,我的理解是这句话的动作覆盖了选择的selbooks,删掉没事了,谢谢两位了,结了