因每隔一段时间,需要提供各系统的有效用户信息,于是写了简单的获取显示 记录一下
先写一个公用的方法,只需要传入各系统的连接字符串,与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 sh