Excel 是一个非常优秀的报表制作软件,用VBA可以控制其生成优秀的报表,本文通过添加查询语句的方法,即用Excel中的获取外部数据的功能将数据很快地从一个查询语句中捕获到EXCEL中,比起往每个CELL里写数据的方法提高许多倍。在程序中引用Microsoft Excel 9.0 Object Library,将下文加入到一个模块中,窗体中调用如下ExporToExcel("select * from table")。则实现快速将数据导出到EXCEL中。 Public Function ExporToExcel(strOpen As String)
'*********************************************************
'* 名称:ExporToExcel
'* 功能:导出数据到EXCEL
'* 用法:ExporToExcel(sql查询字符串)
'*********************************************************
Dim Rs_Data As New ADODB.Recordset
Dim Irowcount As Integer
Dim Icolcount As Integer
   
    Dim xlApp As New Excel.Application
    Dim xlBook As Excel.Workbook
    Dim xlSheet As Excel.Worksheet
    Dim xlQuery As Excel.QueryTable
   
    With Rs_Data
        If .State = adStateOpen Then
            .Close
        End If
        .ActiveConnection = Cn
        .CursorLocation = adUseClient
        .CursorType = adOpenStatic
        .LockType = adLockReadOnly
        .Source = strOpen
        .Open
    End With
    With Rs_Data
        If .RecordCount < 1 Then
            MsgBox ("没有记录!")
            Exit Function
        End If
        '记录总数
        Irowcount = .RecordCount
        '字段总数
        Icolcount = .Fields.Count
    End With
   
    Set xlApp = CreateObject("Excel.Application")
    Set xlBook = Nothing
    Set xlSheet = Nothing
    Set xlBook = xlApp.Workbooks().Add
    Set xlSheet = xlBook.Worksheets("sheet1")
    xlApp.Visible = True
   
    '添加查询语句,导入EXCEL数据
    Set xlQuery = xlSheet.QueryTables.Add(Rs_Data, xlSheet.Range("a1"))
   
    With xlQuery
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = True
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .PreserveColumnInfo = True
    End With
   
    xlQuery.FieldNames = True '显示字段名
    xlQuery.Refresh
   
    With xlSheet
        .Range(.Cells(1, 1), .Cells(1, Icolcount)).Font.Name = "黑体"
        '设标题为黑体字
        .Range(.Cells(1, 1), .Cells(1, Icolcount)).Font.Bold = True
        '标题字体加粗
        .Range(.Cells(1, 1), .Cells(Irowcount + 1, Icolcount)).Borders.LineStyle = xlContinuous
        '设表格边框样式
    End With
   
    With xlSheet.PageSetup
        .LeftHeader = "" & Chr(10) & "&""楷体_GB2312,常规""&10公司名称:"   ' & Gsmc
        .CenterHeader = "&""楷体_GB2312,常规""公司人员情况表&""宋体,常规""" & Chr(10) & "&""楷体_GB2312,常规""&10日 期:"
        .RightHeader = "" & Chr(10) & "&""楷体_GB2312,常规""&10单位:"
        .LeftFooter = "&""楷体_GB2312,常规""&10制表人:"
        .CenterFooter = "&""楷体_GB2312,常规""&10制表日期:"
        .RightFooter = "&""楷体_GB2312,常规""&10第&P页 共&N页"
    End With
   
    xlApp.Application.Visible = True
    Set xlApp = Nothing  '"交还控制给Excel
    Set xlBook = Nothing
    Set xlSheet = Nothing
End Function

相关文章参考:

VBA语言基础

各种Excel VBA的命令

VBA语法200句

各种Excel VBA的命令

Execl编程详解

其它VB相关:


VB软件操作EXCEL教程:※VB全面控制Excel

VB6 中将数据导出到 Excel 提速之法相关推荐

  1. 轉:VB6中将数据导出到Excel提速之法

    from : http://www.it86.cc/develop/2008/0410/28928.shtml Excel 是一个非常优秀的报表制作软件,用VBA可以控制其生成优秀的报表,本文通过添加 ...

  2. 在vue中将数据导出为excel文件file-saver+xlsx+script-loader

    下载依赖 npm install -S file-saver npm install -S xlsx npm install -D script-loader 创建文件 Blob.js和Export2 ...

  3. matlab中将数据导出到Excel表格、.txt、.xml等文件中

    本人应用例子 导出效果:第一行为提示,所以在设置表格行数时需要+1,如上图 matlab官网例子 load patients.mat T = table(LastName,Age,Weight,Smo ...

  4. iOS 中将数据导出成Excel文件 ---- libxlsxwriter框架

    1.使用cocoapods导入libxlsxwriter pod libxlsxwriter在桥接文件中导入头文件 #import <xlsxwriter.h> 2.创建文件路径 let ...

  5. C#从excel中将数据导出到datatable

    #region 从excel中将数据导出到datatable/// <summary>/// 读取excel 默认第一行为标头/// </summary>/// <par ...

  6. python 导出大量数据到excel_怎么在python中将大量数据导出到Excel文件

    怎么在python中将大量数据导出到Excel文件 发布时间:2021-01-16 11:09:40 来源:亿速云 阅读:76 作者:Leah 这期内容当中小编将会给大家带来有关怎么在python中将 ...

  7. php 输入表格数据,怎样将导出数据输入Excel 表格-php 怎么把数据导出到excel表格...

    如何将word文档中的数据导入到excel表格中 方法如下: 1.首先,打开媒介工具"记事本",将word文件里需要导入的数据,复制粘贴到记事本当中,然后保存成为txt文件,本例中 ...

  8. 百度指数常见php框架,怎么导出数据到excel表格-如何将百度指数数据导出到Excel表格...

    如何将百度指数数据导出到Excel表格 第一步:打开CAD.CAD命令行输入"Li"."选择对象"选需要提取坐标的多段线.回车. 第二步:将CAD文本框中的数据 ...

  9. php怎么将表格导出到excel表格,php怎么将excel表格数据-php 怎么把数据导出到excel表格...

    如何使用php实现将数据从excel表导入到mysql中? /** * @param array $data //二维数组 不是对象 * @param string $filename //导件 */ ...

最新文章

  1. HTTP简介、请求方法与响应状态码
  2. java中的排序算法——简单选择排序,树形选择排序与堆排序(一)
  3. List集合的迭代器方法
  4. java函数式 new_java8简单入门--函数式接口 @FunctionalInterface
  5. linux安卓双系统板子,安卓迷你 PC 主机只要 109 美元,支持 Android 和 Linux 双系统...
  6. tf.reduce_mean
  7. 漫步数学分析三十二——可微映射的连续性
  8. BZOJ2658 ZJOI2012 小蓝的好友(treap)
  9. Windows Driver开发_TraceEvents调试以及加载驱动的方法
  10. 计算机实验云平台,浅析基于云平台的计算机实验教学中心建设
  11. 推荐24款好用的数据可视化分析工具,个个堪称神器!
  12. mac使用Alfred搜索外接移动硬盘失败的解决方法
  13. IP地址聚合-路由汇聚
  14. Turtle库画小猫咪
  15. php ios表情包,[iOS] 自定义表情包
  16. Chrome启动页设置无效完美解决
  17. 什么是latch以及如何导致latch争用
  18. 共享充电宝方案怎么做
  19. 在计算机储存中读写速度最快的是,储存器中存储速度最快的是哪个
  20. oc引导win方法_Win10安装Mac os双系统引导过程总结2020

热门文章

  1. Python 在数据科学中一直打压 R 语言?
  2. 滴滴顺风车回归倒计时!
  3. 互联网行业的体面隐退 | 畅言
  4. 深入聊一聊 Spring AOP 实现机制!
  5. TensorFlow 支持 Unicode,中文 NLP 终于省心了
  6. 腾讯痛下杀手,是时候让区块链回归技术和应用的本质了!
  7. 技术就是力量?!有人拿走百万现金,真相却是......
  8. 开发者究竟想从云中得到什么?
  9. maya通过python输出fbx_[转载]FBX动画导入导出经验心得(MayaToMax,MayaToMaya)
  10. html图片下方会有一像素,div里嵌套了img底部会有白块问题和图片一像素问题解决 - Macchiato...