求助分析代码! 点击 menu->format->lock controls 即可以移动控件单步调试即可以看懂! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Private Sub dbgPhonebook_DblClick()Dim Rs As New ADODB.RecordsetDim strSQL As StringOn Error GoTo ErrorHandlerWith frmPhonebookDetails.mblnAddmode = True ‘ 两个标志变量.mblnUpdated = False ’.PrimaryKey = Me.adcPhonebook.Recordset("ContactID") ‘ 主键' textbox 赋值.txtFirstName = Me.adcPhonebook.Recordset("FirstName").txtLastName = Me.adcPhonebook.Recordset("LastName").txtMiddleName = Me.adcPhonebook.Recordset("MiddleName").txtTelNo = Me.adcPhonebook.Recordset("TelephoneNo").txtFaxNo = Me.adcPhonebook.Recordset("FaxNo").txtEMail = Me.adcPhonebook.Recordset("EMailAddress").txtMobilePhoneNumber = Me.adcPhonebook.Recordset("MobilePhoneNo").txtAddress = Me.adcPhonebook.Recordset("Address")' 显示窗体.Show vbModal' 如果更新数据If .mblnUpdated Then' 创建查询strSQL = "SELECT * from tblPhonebook where ContactID = '" & Me.adcPhonebook.Recordset("ContactID") & "'"' 生成记录集Rs.Open strSQL, gadoConn, adOpenKeyset, adLockOptimistic' 更新到数据库Rs!ContactID = Trim(.mstrPrimaryKey)Rs!LastName = Trim(.mstrLastName)Rs!FirstName = Trim(.mstrFirstName)Rs!MiddleName = Trim(.mstrMiddleName)Rs!TelephoneNo = Trim(.mstrTelNo)Rs!FaxNo = (.mstrFaxNo)Rs!EMailAddress = (.mstrEmail)Rs!MobilePhoneNo = (.mstrCellNo)Rs!Address = (.mstrAddress)Rs.Update' 释放资源Rs.CloseSet Rs = NothingCall RefreshGridEnd IfEnd WithExit Sub' 错误处理ErrorHandler:Select Case Err.NumberCase 94Resume NextCase ElseDim intAns As IntegerintAns = MsgBox("Error saving record. " & Trim(Err.Description), vbExclamation + vbAbortRetryIgnore + vbDefaultButton2, "Save Education Error")Select Case intAnsCase vbAbortExit SubCase vbRetryResumeCase vbIgnoreResume NextEnd SelectEnd SelectEnd Sub 原来是这样,你看我这么想对吗?DBTRID是利用对固定的行AND列都有一个赋值,这样,当任意行发生DBLCLICK时,事实上启动的是这个行的数值发生了变化,那么,只要我找到这个变量,就可以对单独的行进行操作了吧。 还有呀,我执行了单步操作,怎么它老是读模块的SUB MAIN()然后就停了,这是怎么回事呀。 再按 F8 ,每按一次,执行一条。 Me.DataGrid1.Row = 2 ' 确定当前行 Me.DataGrid1.Col = 3 ' 确定当前列 Debug.Print Me.DataGrid1.Text ' 表格里的值you are good! 有同学说:玩游戏的 MM 是地球上的熊猫 编程序的 MM 是火星上的熊猫 hehe,小心我告你的同学反古,历史专家和妇联不会恕你的:),不过真的很谢谢你呀,怎么给你加分呀,我这只有130分了,因为这两天广玩dbtrid这个该死的家伙,我一定要把它吃掉。所以发了好几个T了,你们怎么都不要分呢?还有,我怎么才能积分呀。 lshdf(冷雨) ,哈,快快结帖 吧~ VB关于事务处理的问题 【考考您】据说盖茨读大一时写该程序只花了3分钟,你行吗?比较比较,看看你的能力如何? 选颜色,线型画动态曲线 请教outlook的问题:怎么获得当前的邮件 recordset 绑定到datagrid的问题 还真是麻烦的事情 我的Vb没有data environment,怎么添加啊?工程-部件-设计器里没有,求助高手 如何用visualbasic.net设计关键路径 问题! 用SQL 语句如何建立一个表的字段为DOUBLE型并且长度为3位整数一位小数? 新来的,有一堆问题要问,请大家帮帮我!! 关于adodc和DBGRID的问题,
Dim Rs As New ADODB.Recordset
Dim strSQL As StringOn Error GoTo ErrorHandlerWith frmPhonebookDetails
.mblnAddmode = True ‘ 两个标志变量
.mblnUpdated = False ’.PrimaryKey = Me.adcPhonebook.Recordset("ContactID") ‘ 主键' textbox 赋值
.txtFirstName = Me.adcPhonebook.Recordset("FirstName")
.txtLastName = Me.adcPhonebook.Recordset("LastName")
.txtMiddleName = Me.adcPhonebook.Recordset("MiddleName")
.txtTelNo = Me.adcPhonebook.Recordset("TelephoneNo")
.txtFaxNo = Me.adcPhonebook.Recordset("FaxNo")
.txtEMail = Me.adcPhonebook.Recordset("EMailAddress")
.txtMobilePhoneNumber = Me.adcPhonebook.Recordset("MobilePhoneNo")
.txtAddress = Me.adcPhonebook.Recordset("Address")' 显示窗体
.Show vbModal' 如果更新数据
If .mblnUpdated Then
' 创建查询
strSQL = "SELECT * from tblPhonebook where ContactID = '" & Me.adcPhonebook.Recordset("ContactID") & "'"
' 生成记录集
Rs.Open strSQL, gadoConn, adOpenKeyset, adLockOptimistic' 更新到数据库
Rs!ContactID = Trim(.mstrPrimaryKey)
Rs!LastName = Trim(.mstrLastName)
Rs!FirstName = Trim(.mstrFirstName)
Rs!MiddleName = Trim(.mstrMiddleName)
Rs!TelephoneNo = Trim(.mstrTelNo)
Rs!FaxNo = (.mstrFaxNo)
Rs!EMailAddress = (.mstrEmail)
Rs!MobilePhoneNo = (.mstrCellNo)
Rs!Address = (.mstrAddress)Rs.Update
' 释放资源
Rs.Close
Set Rs = Nothing
Call RefreshGrid
End If
End With
Exit Sub
' 错误处理
ErrorHandler:
Select Case Err.Number
Case 94
Resume Next
Case Else
Dim intAns As Integer
intAns = MsgBox("Error saving record. " & Trim(Err.Description), vbExclamation + vbAbortRetryIgnore + vbDefaultButton2, "Save Education Error")Select Case intAns
Case vbAbort
Exit Sub
Case vbRetry
Resume
Case vbIgnore
Resume Next
End Select
End Select
End Sub
Me.DataGrid1.Col = 3 ' 确定当前列
Debug.Print Me.DataGrid1.Text ' 表格里的值
you are good!
编程序的 MM 是火星上的熊猫