如何在MS Access查询中直接使用系统用户名?

Man*_*nus 4 sql ms-access vba

我想知道是否有一种获取系统用户名并直接在MS Access查询中使用它的方法。我已经在表单上的组合框的查询中使参数起作用,并且我还使用ENVIRON(“ USERNAME”)在Access VBA中获得了系统名称。

请让我知道是否可行。

And*_*dre 5

您需要创建一个返回用户名的VBA函数,然后在查询中使用该函数。

Public Function GetUserName() As String
    ' GetUserName = Environ("USERNAME")
    ' Better method, see comment by HansUp
    GetUserName = CreateObject("WScript.Network").UserName
End Function
Run Code Online (Sandbox Code Playgroud)

SELECT foo FROM bar WHERE myUserName = GetUserName();
Run Code Online (Sandbox Code Playgroud)

  • 容易欺骗Environ(“ USERNAME”)。一种更安全的选择是`CreateObject(“ WScript.Network”)。UserName`。 (2认同)