Vba 保存ID字符串的最佳方法?
我很好奇,在VBA/Access中保存用户ID的最佳方法是什么。用户ID将以各种形式用于跟踪用户所做的更改。在.net中,我要做的是创建一个包含用户ID变量的类,或者使用my.system.settings。既然这不是一个选项,那么有什么方法或“方法”可以将变量保存在内存中或作为引用。我想到的是一个“设置”表,但我不确定这是否过份,或者是否有一种已知的更好的方法。在Access中,持久化值意味着将其存储在数据库表中。根据您的描述,我假设您的意思是在当前会话期间保持该值。在这种情况下,一旦从表中获取了值,就可以将其存储在全局变量中,或者作为已实例化的类的实例的属性 另一个特定于访问的选项是将该值设置为窗体上隐藏标签的标题。这可以在主交换机窗体上,在整个会话期间保持打开状态,也可以在启动时打开的隐藏窗体上,并且在整个会话期间保持打开状态Vba 保存ID字符串的最佳方法?,vba,ms-access,Vba,Ms Access,我很好奇,在VBA/Access中保存用户ID的最佳方法是什么。用户ID将以各种形式用于跟踪用户所做的更改。在.net中,我要做的是创建一个包含用户ID变量的类,或者使用my.system.settings。既然这不是一个选项,那么有什么方法或“方法”可以将变量保存在内存中或作为引用。我想到的是一个“设置”表,但我不确定这是否过份,或者是否有一种已知的更好的方法。在Access中,持久化值意味着将其存储在数据库表中。根据您的描述,我假设您的意思是在当前会话期间保持该值。在这种情况下,一旦从表中获
可以创建注册表项,但我可能更喜欢使用隐藏表单。无论采用哪种方法,都必须确保该值在整个会话期间保持不变。如果希望ID仅在该特定会话期间保持不变,则
全局变量可能最适合您
如果希望它在更改之前一直保留在计算机上,那么使用注册表会更好
'SaveSetting appname, section, key, setting
SaveSetting "MyApp", "ID", "Value", "12345678"
'GetSetting(appname, section, key[, default])
CurrentID=GetSetting "MyApp","ID","Value" ' Add ,"DefaultValue" if you want a marker for if there is no value set
'DeleteSetting appname, section[, key]
DeleteSetting "MyApp", "ID" ' add ,"Value" if you only want this specific key deleted
Environ$(“Username”)
就足够了吗?我确实考虑过这一点,但当前的设计是使用数字作为用户ID,而不是实际的帐户名。编码为数字值?有很多麻烦吗?一个小小的变化,而不是添加隐藏标签,是将主(交换机)窗体的Tag
属性设置为user-id。Me.Tag=12345
。然后读成表单!frmSwitchboard.Tag
。