假设您想要发送一个检查用户的文件的演示版本,但你不想使用也许没有你为它付出了一定的次数多 ,。有很多可行的办法,针对这种情况,但在这里我要显示一些简单的VBA称为报表 使用SaveSetting和 GetSetting。
这里的整个过程的截图。它的运行每次打开工作簿时。如果VBA代码密码保护,用户将不能够很容易地防止结束的演示程序。
语法GetSetting是:
... ... SaveSetting是:
每一个参数是您提供访问存储在信息,或从注册表中读取一个任意名称。
AppName的更像是一个大类,该科是一个子类别,重点是又一类。它得到更清晰的例子。第一次打开此工作簿,声明N = GetSetting(“演示”,“演示”,“演示”,0)1执行。第四个参数是默认值,如果没有设置实际上是已存储 。所以第一次,GetSetting返回0。存储到变量 n 加1。
n是5(还),并进入运行SaveSetting。声明SaveSetting“演示”,“演示”,“演示”,N现在存储在注册表中的值5。下一次打开工作簿,Getsetting,返回1,和1被添加到它和存储ñ。仍然没有5,现在2存储在注册表中,等最终,GetSetting返回5,n是6,退出消息后,用户和程序。
要重置零你自己的机器上,你可以运行SaveSetting“演示”,“演示”,“演示”,0,也可以运行的VBA的另一个变体,称为 DeleteSetting。这个语法是:
正如你可以看到,科和关键是可选的。因此,执行DeleteSetting“演示”,清除注册表的AppName的以及科和重点 。
使用GetSetting,SaveSetting,DeleteSetting可以让您之间通信的Excel会议,我最喜欢的方式来使用它调试。我经常遇到的一些VBA代码崩溃,我无法查明,发生这种情况的stumpers 。这是VBA代码超过40000行(是的,一个非常庞大而复杂的的宏设置!) 。单步执行通过代码的想法是好的,但有次当我这样做,则不会出现错误 !所以,我穿插随机行的东西,像我的代码SaveSetting“X”,“X”的“X”, 1 和SaveSetting“X”,“X”,“X”2 和SaveSetting的“X”,“X”的 , “X”等,一旦程序崩溃了,我启动Excel,并在即时窗口中运行此行是否:GetSetting(“X”“X”的“X “),如果返回2例如, 后来我才知道SaveSetting,产生了2和3,产生了一个的程序之间的坠毁 。有帮助。
最后,存储的值是有限的数字我在此所示的例子,它可以是任何字符串你想要的,它像一个存储区域为任何目的使用。
相关文章
同类最新