因每隔一段时间,需要提供各系统的有效用户信息,于是写了简单的获取显示 记录一下
先写一个公用的方法,只需要传入各系统的连接字符串,与SHEET名
代码注释很详细
需注意的是,时间字符串 需要用Format(X, "yyyy-mm-dd HH:MM") 进行转换,否则会显示为数值
Private Sub GetData(strCn As String, shtname As String)
Dim cn As Object '定义数据链接对象 ,保存连接数据库信息
Dim rs As Object '定义记录集对象,保存数据表
Set cn = CreateObject("ADODB.Connection") '创建数据链接对象
Set rs = CreateObject("ADODB.RecordSet") '创建记录集对象,用于接收数据查询获得的结果集
Dim strSQL As String '字符串变量
strSQL = "select a.user_id,a.user_name,a.email_address,a.login_time,a.crtdt from user a where a.user_status in ('A','L')" '设置SQL语句
cn.Open strCn '打开连接
rs.Open strSQL, cn '读取数据库中的数据
Dim i As Integer, j As Integer, h As Integer, g As Integer, sht As Worksheet 'i,j,h为整数变量;sht 为excel工作表对象变量,指向某一工作表
i = 2
If Issheet(shtname) Then
Set sht = ThisWorkbook.Worksheets(shtname) '存在则获取对应sheet'
Else
Set sht = ThisWorkbook.Worksheets.Add(after:=Worksheets(Worksheets.Count)) '不存在则创建新的sheet'
sht.name =

为了定期获取各系统的有效用户信息,本文档记录了一段使用VBA进行数据获取和写入Excel的工作流程。代码中包含一个通用方法,接收系统连接字符串和工作表名称作为参数。关键点在于时间字符串需要使用Format函数转换为'yyyy-mm-dd HH:MM'格式,以及如何获取单元格列标和检查工作表是否存在。连接字符串遵循特定格式。
918

被折叠的 条评论
为什么被折叠?



