已有23人关注
VB6.0的datagrid控件使用
发表在VB答疑区 2016-04-28
是否精华
版块置顶:
我买了VB开发经验技巧宝典,里面486页讲解了数据库编程问题,我还是没看明白如何使用datagrid控件。

我写了一个程序,是采集下位机(万用表)数据,显示在datagrid里,然后再导出到excel中。不知道能否给个范例?
或者思路。

上传了附件,能否在工程里面帮我修改一下?
多谢了。
分享到:
精彩评论 2
淡.印象
学分:323 LV5
TA的每日心情
学习Python
2020-11-23 22:17:24
2016-04-28
沙发
读者您好:


很抱歉我们不能帮你修改程序,只能给你开发思路:

首先引用EXCEL对象,并使用ADO数据库控件绑定Datagrid 控件,然后按照如下代码操作:
Dim i As Integer, r As Integer, c As Integer
  Dim newxls As Excel.Application
  Dim newbook As Excel.Workbook
  Dim newsheet As Excel.Worksheet
  Set newxls = CreateObject("Excel.Application") '创建excel应用程序,打开excel2000
  Set newbook = newxls.Workbooks.Add   '创建工作簿
  Set newsheet = newbook.Worksheets(1) '创建工作表
  
  If Adodc1.Recordset.RecordCount > 0 Then
    For i = 0 To DataGrid1.Columns.Count - 1
         newsheet.Cells(1, i + 1) = DataGrid1.Columns(i).Caption
    Next i
    '指定表格内容
    Adodc1.Recordset.MoveFirst
    Do Until Adodc1.Recordset.EOF
         r = Adodc1.Recordset.AbsolutePosition
         For c = 0 To DataGrid1.Columns.Count - 1
             DataGrid1.Col = c
             newsheet.Cells(r + 1, c + 1) = DataGrid1.Columns(c)
         Next c
         Adodc1.Recordset.MoveNext
    Loop

  end if

大概思路是这样的,细节还需要您自己慢慢研究。
佚名
学分:70 LV3
TA的每日心情
开心
2021-07-05 14:21:40
2016-04-29
板凳
[FIELDSET][LEGEND]引自:1楼[/LEGEND]
读者您好:


很抱歉我们不能帮你修改程序,只能给你开发思路:

首先引用EXCEL对象,并使用ADO数据库控件绑定Datagrid 控件,然后按照如下代码操作:
Dim i As Integer, r As Integer, c As Integer
  Dim newxls As Excel.Application
  Dim newbook As Excel.Workbook
  Dim newsheet As Excel.Worksheet
  Set newxls = CreateObject("Excel.Application") '创建excel应用程序,打开excel2000
  Set newbook = newxls.Workbooks.Add   '创建工作簿
  Set newsheet = newbook.Worksheets(1) '创建工作表
  
  If Adodc1.Recordset.RecordCount > 0 Then
    For i = 0 To DataGrid1.Columns.Count - 1
         newsheet.Cells(1, i + 1) = DataGrid1.Columns(i).Caption
    Next i
    '指定表格内容
    Adodc1.Recordset.MoveFirst
    Do Until Adodc1.Recordset.EOF
         r = Adodc1.Recordset.AbsolutePosition
         For c = 0 To DataGrid1.Columns.Count - 1
             DataGrid1.Col = c
             newsheet.Cells(r + 1, c + 1) = DataGrid1.Columns(c)
         Next c
         Adodc1.Recordset.MoveNext
    Loop

  end if

大概思路是这样的,细节还需要您自己慢慢研究。
[/FIELDSET]



回复:


我现在是ADO与datagrid捆绑就有问题了。
记录源里面(命令文本SQL)该怎么填写?
还有个问题:
你上面给出的代码,放在什么下面呢?窗体下面,还是ADODC控件下面呢?

  
首页上一页 1 下一页尾页 2 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照