注册 登录
编程论坛 VB6论坛

如何把窗体上所有控件的内容保存成一个文件

bing0705 发布于 2018-05-31 16:35, 1777 次点击
我在窗体上放置了一个Frame,Frame上放置了许多控件,点击查询按钮显示查询结果,想把查询出来的页面保存成一个文件,请各位大神帮忙看下能不能实现。
只有本站会员才能查看附件,请 登录

3 回复
#2
wds12018-06-01 08:18
1、保存为文本文件
 Public Sub Save_Txt(ByVal txt1, ByVal file_name)
  Dim i As Long
  Open "d:\text.txt" For Output As #1
   Print #1, txt1'你报保存的每行的文本,可以用循环控制
   Close #1
  End Sub
2、保存为execl
Public Sub Save_Execl(ByVal msf1 As MSFlexGrid)
   Dim i As Integer, j As Integer
   Dim NewXls As Excel.Application
   Dim NewBook As Excel.Workbook
   Dim NewSheet As Excel.Worksheet
   Dim objRange As Object
   Dim CellsData1() As String
   Dim nRows As Long, nColumns As Long
   Set NewXls = CreateObject("Excel.Application") '创建excel应用程序,打开excel2000
       NewXls.SheetsInNewWorkbook = 1
   Set NewBook = NewXls.Workbooks.Add '创建工作簿
   Set NewSheet = NewBook.Worksheets(1) '创建工作表
       NewXls.DisplayAlerts = False  '
   '也可以逐行赋值
    nRows = '行
   nColumns =' 列
   ReDim CellsData1(0 To nRows, 0 To nColumns)
   For i = 0 To nRows - 1
   For j = 0 To nColumns - 1
    CellsData1(i, j) = '行列的值
   Next
   Next
 
   Set NewSheet = NewBook.Worksheets(1) '创建工作表
   '导出到Excel中
   Set objRange = NewSheet.Range(NewSheet.Cells(1, 1), NewSheet.Cells(nRows, nColumns))'cell前加上sheet或xlapp否则二次打开报错
      objRange.Value = CellsData1
   NewXls.Visible = True‘【newxls.saveas filename】
   DoEvents
   Set NewBook = Nothing
   Set NewXls = Nothing
End Sub
#3
ZHRXJR2018-06-02 12:44
以下是引用bing0705在2018-5-31 16:35:16的发言:

我在窗体上放置了一个Frame,Frame上放置了许多控件,点击查询按钮显示查询结果,想把查询出来的页面保存成一个文件,请各位大神帮忙看下能不能实现。

把查询出来的页面保存成一个文件,关键问题是你查询结果是显示在什么控件中,提供这个控件,问题就比较简单了。
#4
wufuzhang2018-06-02 16:03
回复 楼主 bing0705
类似导出报告一样,报告格式可以是Excel、Word和PDF,看你个人需求。
导出Excel文件或Word文件,可以直接编程序导出;导出PDF文件,可以注册
gregn50.dll和grdes50.dll这两个库文件,然后编程序就可以导出了。
1