打印和保存记录

twtiqfn 2010-11-23 03:13:08
大家好,我在VB窗体上放了查询按钮,下面是datagrid显示查询出来的记录,我想把记录打印出来,怎么写代码啊,我还想添加个保存按钮,能够把查询出来的记录另存为Excel文件,代码怎么写啊,请大家帮忙啊,谢谢
...全文
52 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
king06 2010-11-24
  • 打赏
  • 举报
回复
On Error Resume Next
Dim i As Long, j As Long
twtiqfn 2010-11-24
  • 打赏
  • 举报
回复
提示错误啊:runtime error'6148'
invalid row numer
错误定位在了:DataGrid1.Row = DataGrid1.Row + 1“黄色底色”
另外我的表中有身份证字段:并不是所有的字段显示身份证,而是以科学计数法来显示3.7063E+17
也有几条记录显示正确身份证,请大侠帮忙解决

king06 2010-11-23
  • 打赏
  • 举报
回复
查询相对简单,直接用一个记录集,查完后set DataGrid1.datasource=记录集,或者用个adodc控件绑定(不细述)
既然考虑了导出到excel,何不用excel现成的打印功能.导出excel:
Private Sub Command9_Click()
Dim i As Long, j As Long
Dim xlsApp As Excel.Application
Dim xlsBook As Excel.Workbook
Dim xlssheet As Excel.Worksheet
Set xlsApp = New Excel.Application
Set xlsApp = CreateObject("Excel.Application")
xlsApp.Visible = True
xlsApp.Workbooks.Add
xlsApp.Sheets("Sheet1").Select
DataGrid1.Row = 0
i = 1
Do While DataGrid1.Row >= 0
If i = DataGrid1.Row Then Exit Do
i = DataGrid1.Row

For j = 0 To DataGrid1.Columns.Count - 1
With xlsApp
.Cells(DataGrid1.Row + 1, j + 1) = DataGrid1.Columns(j).Text
End With
Next
DataGrid1.Row = DataGrid1.Row + 1
Loop

If xlsApp.ActiveWorkbook.Saved = False Then
xlsApp.ActiveWorkbook.SaveAs App.Path & "\mmm0.xls"
End If
xlsApp.Quit
Set xlsApp = Nothing
dbcontrols 2010-11-23
  • 打赏
  • 举报
回复
问题太大,应该分解

1,216

社区成员

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

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