VB中,我想做出这样的功能就是选定datagrid中某行后,点删除按钮就能把那行给删掉。但是总是有点问题,大家帮我看下代码:
Private Sub Cmddel_Click()
On Error Resume Next
If MsgBox("确定删除此联系人的所有信息?", vbYesNo + vbQuestion + vbDefaultButton2, "确认") = vbYes Then Dim r As New ADODB.Recordset
Set r = DataEnv.rslxr
r.Open
rsql = "select from 联系人信息表 where zbh='" & Txtzbh & "'"
r.Delete
DataEnv.rslxr.MoveNext
If DataEnv.rslxr.EOF Then DataEnv.rslxr.MoveLast
r.Close
End If
Call refreshgrid
End Sub他总是自动删除第1行txtzbh是一个文本,我这样设置了,当鼠标选定某一行的时候,txtzbh里的文本就变成那一行的编号,编号是ACCESS里的自编号,也是主键。大家帮我看看问题在哪里还有,我想他既然老是删除第1行,那我想能不能在选定一行后,自动让那一行置顶。求代码
Private Sub Cmddel_Click()
On Error Resume Next
If MsgBox("确定删除此联系人的所有信息?", vbYesNo + vbQuestion + vbDefaultButton2, "确认") = vbYes Then Dim r As New ADODB.Recordset
Set r = DataEnv.rslxr
r.Open
rsql = "select from 联系人信息表 where zbh='" & Txtzbh & "'"
r.Delete
DataEnv.rslxr.MoveNext
If DataEnv.rslxr.EOF Then DataEnv.rslxr.MoveLast
r.Close
End If
Call refreshgrid
End Sub他总是自动删除第1行txtzbh是一个文本,我这样设置了,当鼠标选定某一行的时候,txtzbh里的文本就变成那一行的编号,编号是ACCESS里的自编号,也是主键。大家帮我看看问题在哪里还有,我想他既然老是删除第1行,那我想能不能在选定一行后,自动让那一行置顶。求代码
dim ss as string '定义字段
Private Sub DataGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Integer)
ss = DataGrid1.Columns.Item(DataGrid1.col).Value
end sub'删除
Private Sub Cmddel_Click()
dim sql as string
sql="Delete From 联系人信息表 where zbh= ' " & Txtzbh & " ' "
cN.Execute strend sub