使用带有if语句的Environ函数

时间:2014-05-10 05:50:32

标签: access-vba ms-access-2010 dao

我正在尝试编写一个IF语句,它允许我根据Environ函数识别“USER NAME”。我找到的下面的代码允许我成功识别用户名(以及UserDomain,UserProfile和windir),但我不知道如何将此信息转换为高效的if语句,这将允许我执行操作取决于在用户名上。下面的代码在我的即时窗口中生成以下输出:

'35 : Environ("USERDOMAIN_ROAMINGPROFILE") = Marchese
'36 : Environ("USERNAME") = Andy LENTI
'37 : Environ("USERPROFILE") = C:\Users\Andrea LENTI
'38 : Environ("windir") = C:\Windows

简而言之,我想编写一个if语句,如果用户名不是'Andy LENTI',我将关闭我的数据库。有人可以帮助我吗?

Private Sub Comando146_Click()

'Function VariablesEnvironnement()

Dim strEnviron As String
Dim Indx As Integer
Dim pos As Integer
Dim message As String

Indx = 1
strEnviron = Environ(Indx)
Do While strEnviron <> ""
pos = InStr(1, strEnviron, "=")
Debug.Print Indx & " : Environ(""" & Left(strEnviron, pos - 1) & """) = " & _
Right(strEnviron, Len(strEnviron) - pos)
Indx = Indx + 1
strEnviron = Environ(Indx)
Loop

MsgBox (strEnviron)

End Sub

1 个答案:

答案 0 :(得分:1)

比我原先想象的要简单得多。

Private Sub Comando147_Click()

  If Environ("userprofile") = "C:\Users\Andy LENTI" Then

  MsgBox Environ("username")

  Else

  MsgBox Environ("userprofile")

  End If

End Sub