精华内容
下载资源
问答
  • 大家好,今日我们讲VBA解数据库解决方案的第48讲内容:从数据库中导出数据到工作后,工作格式的设置。为什么要讲这讲内容呢?因为我们在操作数据库的时候,需要的是数据处理,往往从数据表中导出数据后,格式会...

    大家好,今日我们讲VBA解数据库解决方案的第48讲内容:从数据库中导出数据到工作表后,工作表格式的设置。为什么要讲这讲内容呢?因为我们在操作数据库的时候,需要的是数据处理,往往从数据表中导出数据后,格式会发生变化,我们需要程序来处理。避免手工的操作。如下面截图为导出数据的信息:

    8be1876392e9959d640d1924e2f385f3.png

    很显然,这份表格中我们需要的是出生日期应该是年月日格式的日期,同时我们的第一行最好是把字体换成粗体。这需要程序的自动实现。

    我们可否能让程序自动实现呢?当我们深入的学习应用VBA后,需要这类问题的解决很多,为什么呢?因为我越来越不想手工处理了,最好程序给我一份最终的报表。好了,实现是没问题的,下面看我给出的代码:

    Sub mynzRecords_48() '第48讲 从数据库中导出数据到工作表后,工作表格式的设置

    Dim cnADO, rsADO As Object

    Dim strPath, strSQL, strTable As String

    Set cnADO = CreateObject("ADODB.Connection")

    Set rsADO = CreateObject("ADODB.Recordset")

    strPath = ThisWorkbook.Path & "mydata2.accdb"

    strTable = "员工信息"

    cnADO.Open "Provider=Microsoft.Ace.OLEDB.12.0;Data Source=" & strPath

    strSQL = "SELECT * FROM " & strTable

    rsADO.Open strSQL, cnADO, 1, 3

    Worksheets("48").Select

    Cells.ClearContents

    For i = 0 To rsADO.Fields.Count - 1

    ActiveSheet.Cells(1, i + 1) = rsADO.Fields(i).Name

    Next i

    GoTo 200

    For i = 1 To rsADO.RecordCount

    For j = 0 To rsADO.Fields.Count - 1

    ActiveSheet.Cells(i + 1, j + 1) = rsADO.Fields(j)

    Next j

    rsADO.MoveNext

    Next i

    GoTo 100

    200:

    '设置工作表格式

    With Range(Cells(1, 1), Cells(1, rsADO.Fields.Count))

    .Font.Bold = True

    .HorizontalAlignment = xlCenter

    End With

    '复制全部数据

    Range("A2").CopyFromRecordset rsADO

    ActiveSheet.Columns(rsADO.Fields.Count).NumberFormat = "yyyy-mm-dd"

    ActiveSheet.Columns.AutoFit

    100:

    rsADO.Close

    cnADO.Close

    Set cnADO = Nothing

    Set rsADO = Nothing

    End Sub

    代码截图:

    916b7d499271b758f218ddac718c5d0f.png
    974bdd593dc5021160e3dfd87b00183d.png

    代码讲解:上述代码在执行过程中如果不执行GOTO 200,那么就是我在本文开始时讲到的那种结果了,当执行后GOTO 200 那么就有了格式的设置,下面我们看看都设置了哪些格式呢?

    1 With Range(Cells(1, 1), Cells(1, rsADO.Fields.Count))

    .Font.Bold = True

    .HorizontalAlignment = xlCenter

    End With

    这段代码的执行,设置了表头要按粗体来显示。这样的报表会美观些,当然这只是我个人的观点,每个人和每个人不一样。读者也可以自己设置成自己喜欢的格式。

    2 ActiveSheet.Columns(rsADO.Fields.Count).NumberFormat = "yyyy-mm-dd"

    ActiveSheet.Columns.AutoFit

    上面的代码就将日期列变成了类似于"yyyy-mm-dd" 这种年月日的格式了,并且自动调整。

    下面看我们代码的运行结果了:

    17f47a2c164412add02f404232eadc8f.png

    好了,非常的完美。

    今日内容回向:

    1 如何设置工作表的格式呢?

    2 上述代码中如果设置其他的列该如何设置呢?

    展开全文
  • 大家好,今日我们讲VBA解数据库解决方案的第48讲内容:从数据库中导出数据到工作后,工作格式的设置。为什么要讲这讲内容呢?因为我们在操作数据库的时候,需要的是数据处理,往往从数据表中导出数据后,格式会...

    大家好,今日我们讲VBA解数据库解决方案的第48讲内容:从数据库中导出数据到工作表后,工作表格式的设置。为什么要讲这讲内容呢?因为我们在操作数据库的时候,需要的是数据处理,往往从数据表中导出数据后,格式会发生变化,我们需要程序来处理。避免手工的操作。如下面截图为导出数据的信息:

    229310483ae1832d2192faa6108a3e3c.png

    很显然,这份表格中我们需要的是出生日期应该是年月日格式的日期,同时我们的第一行最好是把字体换成粗体。这需要程序的自动实现。

    我们可否能让程序自动实现呢?当我们深入的学习应用VBA后,需要这类问题的解决很多,为什么呢?因为我越来越不想手工处理了,最好程序给我一份最终的报表。好了,实现是没问题的,下面看我给出的代码:

    Sub mynzRecords_48() '第48讲 从数据库中导出数据到工作表后,工作表格式的设置

    Dim cnADO, rsADO As Object

    Dim strPath, strSQL, strTable As String

    Set cnADO = CreateObject("ADODB.Connection")

    Set rsADO = CreateObject("ADODB.Recordset")

    strPath = ThisWorkbook.Path & "mydata2.accdb"

    strTable = "员工信息"

    cnADO.Open "Provider=Microsoft.Ace.OLEDB.12.0;Data Source=" & strPath

    strSQL = "SELECT * FROM " & strTable

    rsADO.Open strSQL, cnADO, 1, 3

    Worksheets("48").Select

    Cells.ClearContents

    For i = 0 To rsADO.Fields.Count - 1

    ActiveSheet.Cells(1, i + 1) = rsADO.Fields(i).Name

    Next i

    GoTo 200

    For i = 1 To rsADO.RecordCount

    For j = 0 To rsADO.Fields.Count - 1

    ActiveSheet.Cells(i + 1, j + 1) = rsADO.Fields(j)

    Next j

    rsADO.MoveNext

    Next i

    GoTo 100

    200:

    '设置工作表格式

    With Range(Cells(1, 1), Cells(1, rsADO.Fields.Count))

    .Font.Bold = True

    .HorizontalAlignment = xlCenter

    End With

    '复制全部数据

    Range("A2").CopyFromRecordset rsADO

    ActiveSheet.Columns(rsADO.Fields.Count).NumberFormat = "yyyy-mm-dd"

    ActiveSheet.Columns.AutoFit

    100:

    rsADO.Close

    cnADO.Close

    Set cnADO = Nothing

    Set rsADO = Nothing

    End Sub

    代码截图:

    d3072f54db5dc977a9f15b7fc76956bd.png
    edc5cdb0a89f0a1507751292520e5d3b.png

    代码讲解:上述代码在执行过程中如果不执行GOTO 200,那么就是我在本文开始时讲到的那种结果了,当执行后GOTO 200 那么就有了格式的设置,下面我们看看都设置了哪些格式呢?

    1 With Range(Cells(1, 1), Cells(1, rsADO.Fields.Count))

    .Font.Bold = True

    .HorizontalAlignment = xlCenter

    End With

    这段代码的执行,设置了表头要按粗体来显示。这样的报表会美观些,当然这只是我个人的观点,每个人和每个人不一样。读者也可以自己设置成自己喜欢的格式。

    2 ActiveSheet.Columns(rsADO.Fields.Count).NumberFormat = "yyyy-mm-dd"

    ActiveSheet.Columns.AutoFit

    上面的代码就将日期列变成了类似于"yyyy-mm-dd" 这种年月日的格式了,并且自动调整。

    下面看我们代码的运行结果了:

    2089709163e219b534c1b103f8745559.png

    好了,非常的完美。

    今日内容回向:

    1 如何设置工作表的格式呢?

    2 上述代码中如果设置其他的列该如何设置呢?

    展开全文
  • 34.在个工作中查找一个范围内符合某个指定条件的项目对应指定范围加总求和 35.返回 Column 英文字 36.查找指定列名的列数 37.文字格式的时间(分:秒)转化为数字格式(秒) 38.将"hh:mm:ss"格式的时分秒数转换成秒数...
  • 函数作用:在个工作中查找一个范围内符合某个指定条件的项目对应指定范围加总求和..........................59 '35.函数作用:返回 Column 英文字.......................60 '36.函数作用:查找指定列名的列数.......
  • 按条件实现总拆分到分表 • 按比赛成绩进行降序排列 • 对员工信息中员工姓名排序 • 从培训课程安排提取讲师部门 • 从商品明细提取唯一品牌名称 • 根据商品和品牌确定唯一品牌名称 • 多维引用...
  • Excel百宝箱9.0无限制破解版

    热门讨论 2012-02-03 19:05:29
    【工作折分】:将当前工作数据按条件拆分成个工作,可以用任意列的数据做为拆分条件 【合并工作簿】:将指文件夹中所有工作簿中所有工作表数据合并起来。有两种合并方式:将每个工作簿中的工作合到当前...
  • Excel百宝箱

    2012-10-27 17:09:21
    【工作折分】:将当前工作数据按条件拆分成个工作,可以用任意列的数据做为拆分条件 【合并工作簿】:将指文件夹中所有工作簿中所有工作表数据合并起来。有两种合并方式:将每个工作簿中的工作合到当前...
  • 【工作折分】:将当前工作数据按条件拆分成个工作,可以用任意列的数据做为拆分条件 【合并工作簿】:将指文件夹中所有工作簿中所有工作表数据合并起来。有两种合并方式:将每个工作簿中的工作合到...
  • Excel百宝箱8.0

    2011-06-07 21:32:17
    【工作折分】:将当前工作数据按条件拆分成个工作,可以用任意列的数据做为拆分条件 【合并工作簿】:将指文件夹中所有工作簿中所有工作表数据合并起来。有两种合并方式:将每个工作簿中的工作合到当前...
  • 【工作折分】将当前工作数据按条件拆分成个工作,可以用任意列的数据做为拆分条件 【合并工作簿】将指文件夹中所有工作簿中所有工作表数据合并起来。有两种合并方式 【文本与数值互换】将选区的数字瞬间...
  • 16.4.2 模板“对应到”同一数据表的意义 289 16.4.3 模板对应到同一数据表举例 289 16.5 几个系统 293 第17章、 数据规范详解 296 17.1 自动编号 296 17.1.1 自动编号的组成 296 17.1.2 将编号中的表单变量...
  • excel 工具箱

    2012-01-22 15:04:34
    【工作折分】:将当前工作数据按条件拆分成个工作,可以用任意列的数据做为拆分条件 【合并工作簿】:将指文件夹中所有工作簿中所有工作表数据合并起来。有两种合并方式:将每个工作簿中的工作合到当前...
  • 【工作折分】:将当前工作数据按条件拆分成个工作,可以用任意列的数据做为拆分条件 【合并工作簿】:将指文件夹中所有工作簿中所有工作表数据合并起来。有两种合并方式:将每个工作簿中的工作合到当前...
  • EXCEL百宝箱8.0终极版

    2011-11-05 16:48:02
    【工作折分】:将当前工作数据按条件拆分成个工作,可以用任意列的数据做为拆分条件 【合并工作簿】:将指文件夹中所有工作簿中所有工作表数据合并起来。有两种合并方式:将每个工作簿中的工作合到当前...
  • 【工作拆分】 将当前工作的某列数据按指定条件拆分成个工作,可以用任意列的数据以及选定的数据做为拆分条件。 【行列奇偶选择】 可视化对当前工作与列进行快速的奇偶或奇偶列快速选定操作。 ...
  • 【工作拆分】 将当前工作的某列数据按指定条件拆分成个工作,可以用任意列的数据以及选定的数据做为拆分条件。 【行列奇偶选择】 可视化对当前工作与列进行快速的奇偶或奇偶列快速选定操作。 【查找...
  • EXCEL集成工具箱V6.0

    2010-09-11 01:44:37
    【工作拆分】 将当前工作的某列数据按指定条件拆分成个工作,可以用任意列的数据以及选定的数据做为拆分条件。 【行列奇偶选择】 可视化对当前工作与列进行快速的奇偶或奇偶列快速选定操作。 ...
  • 【工作拆分】 将当前工作的某列数据按指定条件拆分成个工作,可以用任意列的数据以及选定的数据做为拆分条件。 【行列奇偶选择】 可视化对当前工作与列进行快速的奇偶或奇偶列快速选定操作。 ...
  • 【工作拆分】 将当前工作的某列数据按指定条件拆分成个工作,可以用任意列的数据以及选定的数据做为拆分条件。 【行列奇偶选择】 可视化对当前工作与列进行快速的奇偶或奇偶列快速选定操作。 ...
  • │ │ 技巧262 跨多表查询.xls │ │ 技巧263 跨多表汇总.xls │ │ 技巧264 条件筛选下求不重复值.xls │ │ 技巧265 求出各项目极值的合计数.xls │ │ │ ├─第26章-内存数组 │ │ 技巧266 数组变换技巧...
  • 7.4.2 统计满足条件的单元格数量 7.4.3 使用AND筛选条件 7.4.4 使用OR条件 7.4.5 综合使用AND和OR筛选条件 7.4.6 出现频率最高的项的计数 7.4.7 确定特定文本的出现频率 7.4.8 统计唯一值的数目 7.4.9...
  • 7.4.2 统计满足条件的单元格数量 7.4.3 使用AND筛选条件 7.4.4 使用OR条件 7.4.5 综合使用AND和OR筛选条件 7.4.6 出现频率最高的项的计数 7.4.7 确定特定文本的出现频率 7.4.8 统计唯一值的数目 7.4.9...
  • ║ 【快捷取数列】 【行列奇偶选择】 【VBA工程解密】 【工作拆分文档】 【屏幕放大镜】 ║ ║ 【快捷取日期】 【查找与替换】 【隐藏与显示磁盘】 【修复EXCEL】 【屏幕画笔】 ║ ║ 【快捷综合取数】 【EXCEL...
  • Excel工具箱教学指导

    2014-03-27 23:07:35
    ║ 【快捷取数列】 【行列奇偶选择】 【VBA工程解密】 【工作拆分文档】 【屏幕放大镜】 ║ ║ 【快捷取日期】 【查找与替换】 【隐藏与显示磁盘】 【修复EXCEL】 【屏幕画笔】 ║ ║ 【快捷综合取数】 【EXCEL...
  • ║ 【恢复工资条】 【LED时钟与样式】 【工作批量改名】 【还原合并数据】 【删除注释】 ║ ║ 【生成数据列】 【系统常用工具】 【资源管理器】 【还原合并且填充】 【定制功能模块】 ║ ║ 【取RMB张数】 ...
  • 6.3 用间公式提取数据------........58 6.3.1 定义间公式------.........58 6.3.2 应用间公式------.........64 6.4 列表选择数据规范------65 6.4.1 定义列表------.....65 6.4.2 设置数据项的列表选择...
  • excel百宝箱 正版

    2013-04-04 23:39:28
    ║ 【恢复工资条】 【LED时钟与样式】 【工作批量改名】 【还原合并数据】 【删除注释】 ║ ║ 【****数据列】 【系统常用工具】 【资源管理器】 【还原合并且填充】 【定制功能模块】 ║ ║ 【取RMB张数】 ...
  • ║ 【快捷取数列】 【行列奇偶选择】 【VBA工程解密】 【工作拆分文档】 【屏幕放大镜】 ║ ║ 【快捷取日期】 【查找与替换】 【隐藏与显示磁盘】 【修复EXCEL】 【屏幕画笔】 ║ ║ 【快捷综合取数】 【EXCEL...
  • 3.3.3. 将数据装入中 3.3.4. 从检索信息 3.4. 获得数据库和的信息 3.5. 在批处理模式下使用mysql 3.6. 常用查询的例子 3.6.1. 列的最大值 3.6.2. 拥有某个列的最大值的 3.6.3. 列的最大值:组 3.6.4. 拥有...

空空如也

空空如也

1 2 3
收藏数 41
精华内容 16
关键字:

vba按条件多表提取行数据