Ms access VBA:类型不匹配
我还不是特别擅长VBA。我在标题中看到一个错误,它指向以Ms access VBA:类型不匹配,ms-access,vba,Ms Access,Vba,我还不是特别擅长VBA。我在标题中看到一个错误,它指向以开头的行,如果NamePart=,它会突出显示=符号。有人知道为什么吗 Public Enum NamePart EnvironmentDefined FullName FirstName LastName End Enum Public Function GetUser(Optional ByVal part As NamePart = EnvironmentDefined) As String
开头的行,如果NamePart=
,它会突出显示=
符号。有人知道为什么吗
Public Enum NamePart
EnvironmentDefined
FullName
FirstName
LastName
End Enum
Public Function GetUser(Optional ByVal part As NamePart = EnvironmentDefined) As String
Dim result As String
Dim sysInfo As Object
Dim userInfo As Object
If NamePart = EnvironmentDefined Then
GetUser = Environ$("USERNAME")
Exit Function
End If
Set sysInfo = CreateObject("ADSystemInfo")
Set userInfo = GetObject("LDAP://" & sysInfo.UserName)
Select Case NamePart
Case FullName
result = userInfo.FullName
Case FirstName
result = userInfo.GivenName
Case LastName
result = userInfo.LastName
Case Else
result = Environ$("USERNAME")
End Select
GetUser = result
End Function
Private Sub Command363_Click()
Call GetUser
MsgBox "Username: " & GetUser
End Sub
NamePart
是一个枚举,这意味着要使用它进行比较,您可能需要询问枚举中的任何一项是否等于某个值
If part = NamePart.EnvironmentDefined Then
也
请注意,当您在
NamePart
之后点击
时,所有枚举选项都会出现 另外,Select Case NamePart
应该是Select Case part
Select Case part
Case NamePart.FullName
result = userInfo.FullName
Case NamePart.FirstName
result = userInfo.GivenName
Case NamePart.LastName
result = userInfo.LastName
Case Else
result = Environ$("USERNAME")
End Select