我有一张带有脚本的Excel表格,它保存在每个用户都可以访问的远程位置。 该宏将允许用户选择目标文件夹并在其中创建一些文件。
现在我希望我的脚本能够记住每个用户最后选择的路径。我将来可能需要存储更多路径(变量)。
我的想法是将这些数据存储在每个用户的Environ("AppData")
位置。电脑。离线cookie的排序。
但是,最简单的创建方法(如果它不存在)将从多个我想轻松访问的文件中读取和更新文件?
我已经尝试将其保存在记事本中,但索引和解析是噩梦。
答案 0 :(得分:12)
将设置保存到注册表。
SaveSetting(appname,section,key,setting)
SaveSetting "AffectedTerminals", "frmMain", "LastDir", szPathname
然后,您可以在下次运行应用时使用getsetting检索设置,以便您可以使用它。
GetSetting(appname,section,key [,default])
Dim szLastDir As String
szLastDir = GetSetting("AffectedTerminals", "frmMain", "LastDir", "P:\AttEngineering")
编辑:解释了appname和section参数。
appname和section可以是你想要的任何东西。描述设置的东西是最好的。在上面的代码中,AffectedTerminals是我的应用程序的名称。因此,如果您有一个处理IT发票的电子表格,那么您可以调用appname" ITinvoices"。该部分只是regestry条目的子部分(一种子目录)。
该设置将保存在此位置
HKEY_CURRENT_USER / Software / VB和VBA Program Settings / appname / Section / key / value /
保存设置功能
<强> AppName的强>
需要。字符串表达式,包含应用该设置的应用程序或项目的名称。
栏目强>
需要。字符串表达式,包含要保存密钥设置的部分的名称。
<强>关键强>
需要。字符串表达式,包含要保存的键设置的名称。
<强>设置强>
需要。包含要设置Key的值的表达式。
GetSetting功能
<强>应用程序名称强>
需要。字符串表达式,包含请求其密钥设置的应用程序或项目的名称。
部分强>
需要。字符串表达式,包含找到键设置的部分的名称。
<强>键强>
需要。字符串表达式,包含要返回的键设置的名称。
默认强>
可选的。如果在键设置中未设置任何值,则包含要返回的值的表达式。如果省略,则默认为零长度字符串(&#34;&#34;)。