欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → 定义变量时public、private、dim的区别

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有3119人关注过本帖树形打印复制链接

主题:定义变量时public、private、dim的区别

帅哥哟,离线,有人找我吗?
chendong
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:284 积分:0 威望:0 精华:0 注册:2015/10/23 10:17:30
定义变量时public、private、dim的区别  发帖心情 Post By:2015/12/23 19:24:15 [只看该作者]

请问在定义变量时,public、private、dim的区别。如果什么都不用,则应该是指哪个。

在VBA程序中,是否能启动外部的可执行程序(exe程序),如何做?

 回到顶部
帅哥哟,离线,有人找我吗?
王锋
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:罗宾汉 帖子:11808 积分:20695 威望:0 精华:10 注册:2009/8/18 8:15:13
  发帖心情 Post By:2015/12/24 10:30:47 [只看该作者]

public、private 用在类模块中的,定义该变量在模块中的访问权限,dim 主要是声明一个普通变量使用,如果你在VBS中使用了变量在使用前必须要申明就需要每个使用的变量都Dim一下,这个推荐初学者使用这个模式。具体的VBS的编程基础不再我们金字塔的服务范围内,建议客户自行网络或者书店购买VBS及OFFCIE VBA的开发书籍。

 

Application 对象

WinExec 执行一个外部应用程序



金字塔—专业程序化软件提供商

金字塔-技术部

-----------------------------------------------------------------------------------------------------

工作时间:周一至周五 08:30 - 17:30   周末及法定节假日休息

Email:service@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
chendong
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:284 积分:0 威望:0 精华:0 注册:2015/10/23 10:17:30
  发帖心情 Post By:2015/12/24 11:34:15 [只看该作者]

在网上搜索了下,是这样说的:

1、PublicPrivate一般用于定义全局变量,也可以在类中使用。

1-1、区别在于:[Public]前者定义的是公共变量,如果在一个模块当中使用,那么整个应用程序都能使用它所定义的变量,如果在类中使用,那么它就是一个共有属性。

[Private]而后者定义的是私有变量,如果在一个模块中使用,那么只有这个模块才能访问到它所定义的变量,如果在类中使用,那么它就是一个私有属性。

2、DimStatic一般在过程(Sub或者Function)内部使用,它们所定义的变量都只能在过程内部被访问。

2-1、区别在于:[Dim]前者定义的是动态变量,过程一旦结束,该变量所占有的内存就会被系统回收,而变量所储存的数据就会被破坏。

[Static]后者定义的是静态变量,这意味着在过程结束后这个变量所占有的内存不会被回收,数据当然也不会被破坏了,这样当你下次再调用该过程的时候,数据就依然存在。

相比之下,Public和Static都有保留数据不被破坏的作用,但是,前者适合于那些所有过程都可能访问到的变量,而后者则把变量的作用范围缩在最小(只在该过程内能被访问)。


 回到顶部