Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
数据库连接到SQL server的VBA Excel工作簿需要登录信息_Sql_Vba_Excel - Fatal编程技术网

数据库连接到SQL server的VBA Excel工作簿需要登录信息

数据库连接到SQL server的VBA Excel工作簿需要登录信息,sql,vba,excel,Sql,Vba,Excel,我已经创建了一个Excel VBA工作簿。它有一个控制面板页面,其中安装了一个按钮,用于运行针对SQL数据库运行的VB/ASP脚本。我创建了用于输入日期的文本框,并将这些文本框用作VB/ASP脚本的输入,该脚本用于提取各个工作表(报告)。现在,我想从ENVIRON声明用户名(“username”),然后根据用户名列表计算用户名,并将用户id(又名UserNumber)返回到控制面板页面上的文本框(sql数据库中的用户id)。 示例:如果sjones登录到windows,则评估用户名列表=165?

我已经创建了一个Excel VBA工作簿。它有一个控制面板页面,其中安装了一个按钮,用于运行针对SQL数据库运行的VB/ASP脚本。我创建了用于输入日期的文本框,并将这些文本框用作VB/ASP脚本的输入,该脚本用于提取各个工作表(报告)。现在,我想从ENVIRON声明用户名(“username”),然后根据用户名列表计算用户名,并将用户id(又名UserNumber)返回到控制面板页面上的文本框(sql数据库中的用户id)。 示例:如果sjones登录到windows,则评估用户名列表=165?,然后 Var1=Var1&“或(pd.created_by='”+Sheets(“控制面板”).UserNumber.Text+“)”&vbCrLf


我想根据当时登录Windows的人提取报告,以防止其他人为自己以外的任何人运行报告。工作表位置对所有用户开放,但我希望他们仅为登录的用户运行报告?可能有一种更简单的方法可以做到这一点,但我在VB/ASP方面很弱。请帮忙。TIA Conya

首先获取用户名,然后执行sql查询以获取与该用户名关联的用户名。代码可能如下所示:

Public UName, UID as String 

Public Sub GetUName()
    UName = Environ("USERNAME") 
End Sub

Public Sub GetUID()
    strSQL = "Select UID from table1 where username=" & "'" UName & "'"
    UID = oConn.Execute strSQL
End Sub

你哪里有问题?发布代码的相关部分,有人可能会提供帮助。你真的在使用ASP吗?如果您使用的是ASP,您如何与ASP服务器通信?