ADO 数据集动态统计汇总

hant 2005-01-26 09:33:37
我现在做的一个页面窗体中,我是用ADO的ResultSet绑定了grid以及Text控件,我现在可以通过对text控件文本的编辑实现数据集记录的修改,
同时我使用一个没有绑定数据集的Text控件保存记录集的某一字段的汇总值,如对单价字段值的汇总,形成总价,我希望能够在修改数据集单价的同时,这个汇总值也能够动态的更新,不知道在VB中如何能够实现?
...全文
112 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
of123 2005-01-28
  • 打赏
  • 举报
回复
麻烦楼主将此问题申请一下 FAQ。这样更多人可以看到。
wumylove1234 2005-01-28
  • 打赏
  • 举报
回复
呵呵.
hant 2005-01-28
  • 打赏
  • 举报
回复
palmkey(终日而思,孰如须臾所学) 方法切实可用,很实际!
of123() 的方法,由于我在绑定时,没有进行数据连接的定义,因此没有采用这种方法!
特别感谢二位的帮忙!解决了棘手的问题!
再次表示感谢!
palmkey 2005-01-27
  • 打赏
  • 举报
回复
对text控件文本的编辑时--------触发Change事件
可以在事件中自已统计汇总值,示例如下

Private Sub Text1_Change()
dim isum as Integer
dim j,i as integer 'j须统计的列,假设为第2列
isum=0:j=1

for i=1 to grid.rows-1
grid.row=i
grid.col=j
isum=isum+cint(grid.text)
next
text2.text=isum '设置未绑定Text控件的值
End Sub
hant 2005-01-27
  • 打赏
  • 举报
回复
好方法,试一试!3ks!
of123 2005-01-27
  • 打赏
  • 举报
回复
你是将 RecordSet 对象绑定到网格控件的吗?这样做:

声明 RecordSet 对象变量时带上事件触发功能:

Dim WithEvents rs As ADODB.Recordset

这样,在 VB 的代码编辑界面上对象下拉框中会有 rs 出现,选中它;再在此框右边的事件下拉框中选中 RecordChangeComplete。代码区会自动添加上下面代码。

Private Sub rs_RecordChangeComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal cRecords As Long, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)

End Sub

在其中加上你的统计代码,例如:

Private Sub rs_RecordChangeComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal cRecords As Long, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)

Dim rs1 As New ADODB.Recordset

Set rs1 = cnn.Execute("SELECT Sum(Price) AS TotalPrice FROM Table") 'cnn是你已经定义的连接
Text1 = rs1!TotalPrice & ""
rs1.Close
Set rs1 = Nothing

End Sub
viena 2005-01-26
  • 打赏
  • 举报
回复
不懂,从来不用绑定~

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧