VBA数据库解决方案第九讲:打开数据库记录集,所得数据回填

本文主要是介绍VBA数据库解决方案第九讲:打开数据库记录集,所得数据回填,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

《VBA数据库解决方案》教程(版权10090845)是我推出的第二套教程,目前已经是第二版修订了。这套教程定位于中级,是学完字典后的另一个专题讲解。数据库是数据处理的利器,教程中详细介绍了利用ADO连接ACCDB和EXCEL的方法和实例操作,教程第一版的修订内容主要是完成所有程序文件的32位和64位OFFICE系统测试。

这套教程共两册,八十四讲,今后一段时间会给大家陆续推出修订后的教程内容。今日的内容是:VBA数据库解决方案第九讲:打开数据库记录集,把所得的数据回填到工作表d396bd5f1834f8bc00cca90043557974.jpeg

【分享成果,随喜正能量】成年人只能筛选,不能教育。人教人,教不会,事教人,一次就够。吃亏和吃饭一样,吃多了自然就会成长!。

第九讲 打开数据库记录集,把所得的数据回填到工作表

大家好,今日继续讲解VBA数据库解决方案的第9讲内容,打开一个数据库记录集,并把数据放到工作表文件中。

数据库的讲解开始进入到实际操作阶段,数据库的内容涉及到知识较多,还是之前强调的,这是VBA中级及以上水平的范畴,对于基础没有牢固的朋友,一定要下功夫把基础打牢,才可以逐渐过渡到数据库的学习。一定要对照我的第一套教程《VBA代码解决方案》,把各个知识点要弄通,然后再学习这套教程,可以收到事半功倍的效果。

1 应用场景的具体分析

回到我们的话题,实例,有一个数据库文件名为mydata,里面记录了某公司员工的情况,我命名为“职员表”,如下面的截图,我只是给出了两个数据,如何把数据库中的数据中符合部门为总务的数据导出到EXCEL文件中,以利于查看呢?

2d8fac9345560186c7faf1465c58affc.jpeg

2 打开数据库,把所得的数据回填到工作表中的代码及代码分析

下面我们看看代码将如何书写:

Sub mynz_9() '第9讲内容,打开一个数据库记录集,并把数据放到工作表文件中

Dim cnADO As Object, rsADO As Object

Dim strPath As String, strSQL As String

Dim i As Integer

Set cnADO = CreateObject("ADODB.Connection")

Set rsADO = CreateObject("ADODB.RecordSet")

strPath = ThisWorkbook.Path & "\mydata.accdb"

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

strSQL = "SELECT * FROM 职员表 WHERE 部门='总务'"

rsADO.Open strSQL, cnADO, 1, 3

Sheets("9").Select

Cells.ClearContents

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

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

Next i

Range("A2").CopyFromRecordset rsADO

rsADO.Close

cnADO.Close

Set rsADO = Nothing

Set cnADO = Nothing

End Sub

代码截图:

cbd7cc6d0a6bd7057e9791d16538bae6.jpeg

代码讲解:

[待续]

本讲内容参考程序文件:VBA与数据库操作(第一册).xlsm

d29f93e5e7ac6ad3910a793435118bfb.jpeg

我20多年的VBA实践经验,全部浓缩在下面的各个教程中:


3b04b2114d487e52d40ad3ed60849885.jpeg

618c5aac7672e34279ce01451a4f218d.jpeg

这篇关于VBA数据库解决方案第九讲:打开数据库记录集,所得数据回填的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/768801

相关文章

关于如何更好管理好数据库的一点思考

本文尝试从数据库设计理论、ER图简介、性能优化、避免过度设计及权限管理方面进行思考阐述。 一、数据库范式 以下通过详细的示例说明数据库范式的概念,将逐步规范化一个例子,逐级说明每个范式的要求和变换过程。 示例:学生课程登记系统 初始表格如下: 学生ID学生姓名课程ID课程名称教师教师办公室1张三101数学王老师101室2李四102英语李老师102室3王五101数学王老师101室4赵六103物理陈

数据库期末复习知识点

A卷 1. 选择题(30') 2. 判断范式(10') 判断到第三范式 3. 程序填空(20') 4. 分析填空(15') 5. 写SQL(25') 5'一题 恶性 B卷 1. 单选(30') 2. 填空 (20') 3. 程序填空(20') 4. 写SQL(30') 知识点 第一章 数据库管理系统(DBMS)  主要功能 数据定义功能 (DDL, 数据定义语

【服务器运维】MySQL数据存储至数据盘

查看磁盘及分区 [root@MySQL tmp]# fdisk -lDisk /dev/sda: 21.5 GB, 21474836480 bytes255 heads, 63 sectors/track, 2610 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesSector size (logical/physical)

给数据库的表添加字段

周五有一个需求是这样的: 原来数据库有一个表B,现在需要添加一个字段C,我把代码中增删改查部分进行了修改, 比如insert中也添入了字段C。 但没有考虑到一个问题,数据库的兼容性。因为之前的版本已经投入使用了,再升级的话,需要进行兼容处理,当时脑子都蒙了,转不过来,后来同事解决了这个问题。 现在想想,思路就是,把数据库的表结构存入文件中,如xxx.sql 实时更新该文件: CREAT

SQL Server中,查询数据库中有多少个表,以及数据库其余类型数据统计查询

sqlserver查询数据库中有多少个表 sql server 数表:select count(1) from sysobjects where xtype='U'数视图:select count(1) from sysobjects where xtype='V'数存储过程select count(1) from sysobjects where xtype='P' SE

SQL Server中,添加数据库到AlwaysOn高可用性组条件

1、将数据添加到AlwaysOn高可用性组,需要满足以下条件: 2、更多具体AlwaysOn设置,参考:https://msdn.microsoft.com/zh-cn/library/windows/apps/ff878487(v=sql.120).aspx 注:上述资源来自MSDN。

SQL Server中,用Restore DataBase把数据库还原到指定的路径

restore database 数据库名 from disk='备份文件路径' with move '数据库文件名' to '数据库文件放置路径', move '日志文件名' to '日志文件存放置路径' Go 如: restore database EaseWe from disk='H:\EaseWe.bak' with move 'Ease

数据时代的数字企业

1.写在前面 讨论数据治理在数字企业中的影响和必要性,并介绍数据治理的核心内容和实践方法。作者强调了数据质量、数据安全、数据隐私和数据合规等方面是数据治理的核心内容,并介绍了具体的实践措施和案例分析。企业需要重视这些方面以实现数字化转型和业务增长。 数字化转型行业小伙伴可以加入我的星球,初衷成为各位数字化转型参考库,星球内容每周更新 个人工作经验资料全部放在这里,包含数据治理、数据要

uniapp H5打开地图

manifest.json文件,源码视图找到H5添加下面内容 "h5" : {"sdkConfigs" : {"maps" : {"amap" : {"key" : "**********************","securityJsCode" : "****************************","serviceHost" : ""}}}} 高德开放平台 申请时选择(W