在机房收费系统中,将vb中的数据导出到excel表格真的很重要,在这里遇到了各种各样的问题,下来和我一起来解决它吧!!
一、前期准备工作在解决问题之前,我先声明一下,我的是office 2013,有些版本不一样,只会有一点点差别,只需要模仿就好!
1、点击工程——引用,去找到microsoft excel 15.0 object library,打上勾就好!
2、如果此时你的引用里没有microsoft excel 15.0 object library,那么这时候就需要点击浏览,找到你安装文件office的位置,找到位置后打开office 2013!
3、此时点击了office15,然后,点击文件类型,选择.exe,然后找到execel.exe,点击,然后点击打开.
4、此时就大公告成了
二、代码部分这部分我还是有很多感想的,大家都知道机房收费系统中,有很多都需要导成excel表格的形式,什么是解决重复的代码最好的帮手呢?模块就是!在模块里我们定义一个函数,用来调用excel!会减少大量的代码,接下来大家一起和我来实现它吧!!
1、模块的代码部分!Public Function EduceExcel(myGrID As MSFlexGrID) '定义导出excel函数 Dim xlapp As New excel.Application '之所以用到new。是因为是引用类型,声明excel对象 Dim xlbook As excel.Workbook '声明工作簿对象 Dim xlsheet As excel.Worksheet '声明工作表单 Dim i As Integer Dim j As Integer If myGrID.Text = "" Then MsgBox "没有记录可导出!",vbOKOnly + vbExclamation,"警告" Exit Function Else Set xlapp = CreateObject("excel.application") '调用excel程序 Set xlbook = xlapp.Workbooks.Add(1) '创建新的空白簿 Set xlsheet = excel.ActiveWorkbook.ActiveSheet '创建新的工作表单 For i = 0 To myGrID.Rows - 1 '填入数据 For j = 0 To myGrID.Cols - 1 xlsheet.Cells(i + 1,j + 1) = myGrID.TextMatrix(i,j) 'cell(a,b)表示a行,b列,这让写是因为vb中默认是从0开始的,而excel是从1开始的 Next j Next i xlapp.Visible = True '显示Excel表格 Set xlapp = nothing '交还控制给Excel End IfEnd Function2、窗体调用的代码!
Call EduceExcel(MSFlexGrID1)
这一句即可,MSFlexGrID1就是你的当前窗体的msflexgrID控件的名称!
总结:我之前总结的模块的代码的知识,发挥了作用,利用好了模块,节省了大量的代码!!!
总结以上是内存溢出为你收集整理的(vb)机房收费系统之——调用excel 表格(引用)全部内容,希望文章能够帮你解决(vb)机房收费系统之——调用excel 表格(引用)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)