[英]it is possible to use a dlookup on a public const in vba?
我有大約 10 個表單,我需要在所有表單中輸入一些基本信息,例如日期和用戶,為此我在所有表單上使用相同的代碼,我正在搜索一個表單來設置此信息,只是稱呼
現在的vba
Private sub Form_Load()
Dim userId As String
userId = Environ("Username")
Dim uSer As String
uSer = DLookup("User", "Adm_User", "UserId='" & Environ$("Username") & "'")
Dim dtNow as string
dtNow = Format(Now, "dd/mm/yyyy hh:mm")
me.text_userId.Caption = userId
me.text_uSer.Caption = uSer
me.text_dtNow.Caption = dtNow
我想要的vba
Public Const userId As String = Environ("Username")
Public Const uSer As Variant = DLookup("User", "Adm_User", "UserId='" & Environ$("Username") & "'")
Public Const dtNow As String = Format(Now, "dd/mm/yyyy hh:mm")
Private sub Form_Load()
me.text_userId.Caption = userId
me.text_uSer.Caption = uSer
me.text_dtNow.Caption = dtNow
簡單的方法是在“通用”模塊中保留一組函數:
Public Function GetUserId() As String
Dim UserId As String
UserId = Environ("Username")
GetUserId = UserId
End Function
Public Function GetUser() As String
Static User As String
If User = "" Then
User = Nz(DLookup("User", "Adm_User", "UserId = '" & GetUserId & "'"))
End If
GetUser = User
End Function
Public Function FormatNow() As String
Dim Text As String
Text = Format(Now, "dd/mm/yyyy hh:nn")
FormatNow = Text
End Function
然后在表單加載時調用它們:
Private Sub Form_Load()
Me!text_userId.Caption = GetUserId
Me!text_user.Caption = GetUser
Me!text_dtNow.Caption = FormatNow
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.