vb吐槽班06 进击的Excel

前端之家收集整理的这篇文章主要介绍了vb吐槽班06 进击的Excel前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
诶,好的好的,今天依旧小满来到了。。。咳咳。。。拿错稿子了。

hello各位亲爱的观众朋友们,欢迎收看又是我给大家带来的大型情感类节目,非诚。。。哦,不是,是这个吐槽班。

最近是有点头晕啊,可能是吃饭的时候这个没注意营养什么的,dota元素缺乏了。。。

经过了中秋节五天连续的学习之后,又是迎来了十一九天课,越上越快乐。当我听到十月一主要学英语的时候,我只能说:感觉自考不会再过了。。。

不光自考,计算机进度也不快。前两天老李也是问我:咋就不着急呢?我也不知道为啥,还真就是不着急。。。当然像我这么狂拽酷炫叼霸天的乐观心态和满到令人绝望的课程表,一般人是不会有的。

机房收费系统反正是弄了一半了吧,我是觉得只要思路清晰了,其他的都是小事。。。可是。。。尼玛我就卡在小事上了。。。

上下机的那个算法想了好长时间都觉得差点什么,怎么算都不对,哎~算了,那就先搞别的,这也是终于发现了一些和技术沾边的东西啊。

以前呢,作品展的时候也是为了达到某些目的,曾经写过关于Excel代码吧。等我翻出当时的博客却发现那是读数据的,用的是DAO达成的目的。这次是要将MSHFlexGrid中的数据导入Excel,那么。。。好吧,我还是问度娘好了。

最后呢也是看了老李写的博客吧,终于是搞定了这个东西。像这种经常要反复用到的代码最好还是弄一个自定义函数

Public Function OutPutToExcel(MyFlexGrid As MSHFlexGrid)
'*******************************************
'功能:
'             导入数据到Excel
'参数:
'             MyFlexGrid     ——要导入Excel的数据源
'*****************************************
    Dim i As Integer
    Dim j As Integer                            '用来循环
        
    Dim Excelapp As Excel.Application           '定义一个Excel应用
    Dim Excelworkbook As Excel.Workbook         '定义一个工作簿
    Dim Excelworksheet As Excel.Worksheet       '定义一个工作表
    
    On Error Resume Next
    
    Set Excelapp = CreateObject("Excel.Application")
    Set Excelworkbook = Excelapp.Workbooks.Add
    Set Excelworksheet = Excelworkbook.Worksheets(1)   '将上面那三个玩意实例化,就是创建对象
    
    Excelworksheet.Activate
    
    
    
    With MyFlexGrid                             '将MSHFlexGrid中的数据写进去
        For i = 0 To .Rows - 1
            For j = 0 To .Cols - 1
                DoEvents
                Excelapp.ActiveSheet.Cells(i + 1,j + 1) = .TextMatrix(i,j)
            Next j
        Next i
    End With
    
    Excelapp.Visible = True                     '显示Excel表
   
End Function

好的这差不多就这样了,整完了原型中的代码,我这也是发挥了一下恶搞能力吧,能把数据库中的数据导出来,能不能把Excel中的数据导进去呢,我觉得一定是可以的。

    Dim cn As ADODB.Connection
    Dim strsql As String
    Dim lngRecsAff As Long
    
    '连接Excel数据源
    Set cn = New ADODB.Connection
    cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
            "Data Source=C:\test\xltestt.xls;" & _
            "Extended Properties=Excel 8.0"
        
    '使用 Jet 4.0 Provider 通过 ADO 连接将 Excel 数据导入到 sql Server。
    strsql = "SELECT * INTO [odbc;Driver={sql Server};" & _
             "Server=<server>;Database=<database>;" & _
             "UID=<user>;PWD=<password>].XLImport9 " & _
             "FROM [Customers$]"
    Debug.Print strsql
    
    '执行导入数据
    cn.Execute strsql,lngRecsAff,adExecuteNoRecords
    Debug.Print "Records affected:" & lngRecsAff
            
    cn.Close
    Set cn = Nothing

这个是在微软的支持中找到的一种使用方法,这里面用的就是ADO,所以我就可耻的复制过来了。不过我觉得使用之前数据类型一定要先对了,否则出啥问题找微软去,不要找我~

其实,sql Server自带导入数据的功能,直接在企业管理器中右键想要导入数据的数据库,任务,导入数据,然后跟着向导走就行了,比较无脑,就不详细说了。

诶。。。怎么感觉这是三角关系。。。

这两天真的是有点感冒啊,估计是上铺那哥们传给我的,幸好我还没有放弃治疗,提前找出感冒药吃了一片。要不是还要好好学习,我还真就请个假回家啥的。。。这说出来我自己都不信啊。。。

刚才还看到某同学说我不更新,我就更给你看,虽然不是啥知名节目,好歹我这也是个自己给自己认证的博客专栏,不能随随便便就写点东西就算更新是吧。

好了,这期就到这了。接下来就是大家喜闻乐见的右上角红叉叉时间。

以上

猜你在找的VB相关文章