Private Sub Command2_Click()
Dim i As Integer
Dim n As Integer
n = 0With ListView1
For i = 1 To .ListItems.Count
If .ListItems(i) = "√" Then
n = n + 1
id = i
End If
NextIf n = 1 Then
If MsgBox("真的要删除 [序号" & id & "] 的数据吗?", vbQuestion + vbYesNo + vbDefaultButton2, "提示") = vbNo Then
Exit Sub
End If
End If
If n > 1 Then
If MsgBox("真的要删除这[" & n & "]条数据吗?", vbQuestion + vbYesNo + vbDefaultButton2, "提示") = vbNo Then
Exit Sub
End If
End IfFor i = 1 To .ListItems.Count
If .ListItems(i) = "√" Then
Set rs = Adodc1.Recordset
rs.ActiveConnection.Execute "Delete From ServerData Where 文件='" & 这里怎么写啊?谢谢 & "'"
rs.ActiveConnection.Execute "Delete From ServerData Where 文件='" & Trim(MSHFlexGrid1.TextMatrix(i, 1)) & "'"以前用MSHFlexGrid是这样listview不知道怎么删了
End If
Next i
End With
End Sub

解决方案 »

  1.   

    Private Sub Command2_Click() 
    Dim i As Integer 
    Dim n As Integer
    Dim selStr as String'加上这一句n = 0 
    selStr=""With ListView1 
    For i = .ListItems.Count To 1 Step -1 
    If .ListItems(i) = "√" Then 
    n = n + 1 
    selStr=selStr & "," & .ListItems(i).Text & "'"'加上这一句
    End If 
    Next If n = 1 Then 
    If MsgBox("真的要删除 [序号" & 这里怎么写?别用.SelectedItem.Index啊,因为这个是按选择的行而不是.ListItems(i) = "√" 里某行的序号 & "] 的数据吗?", vbQuestion + vbYesNo + vbDefaultButton2, "提示") = vbNo Then 
    Exit Sub 
    End If 
    End If If n > 1 Then 
    If MsgBox("真的要删除这[" & n & "]条数据吗?", vbQuestion + vbYesNo + vbDefaultButton2, "提示") = vbNo Then 
    Exit Sub 
    End If 
    End If selStr="('" & Mid(selStr,2) & ")"'加上这一句,用于sql中作为in语句的条件rs.ActiveConnection.Execute "Delete From ServerData Where " & Adodc1.Recordset.Fields(0).Name & " in " & selStr 
    End With 
    End Sub