Syc*_*lue 2 variables excel vba
想要在模块的一个位置定义引用变量(使用ActiveSheet.Cells [row,col]从工作表中的单元格调用值),以便在MS Excel文件中的多个子项中使用。该文件是一个动作跟踪器,subs使某些电子邮件自动执行(每个subs在给定条件下打开电子邮件)。每个子项的所有参考变量都相同-在一个地方进行定义将使电子表格的维护变得更加简单。
试图在第一个子控件上方定义变量,错误消息出现在第一个值上(如下所述)。我已经搜索了(a)全局变量和(b)如何在子对象上方进行定义。但是(a)所有变量都在同一模块中(b)错误消息,如下所述。我尚未找到有关使用ActiveSheet.Cells()引用定义变量的指南。
Option Explicit
'Defines variables for all macros:
'Defining Reference Variables
Today = ActiveSheet.Cells(2, 4)
ActionLogTitle = ActiveSheet.Cells(3, 3)
IPT_Leader = ActiveSheet.Cells(7, 7)
Run Code Online (Sandbox Code Playgroud)
(关于Today = ActiveSheet.Cells(2,4)错误,高亮显示为“ 2”)
编译错误:无效的外部过程
正如编译器所提示的那样,您不能在Sub / Function之外编写分配。
您可以为每个变量声明一个函数:
Function MyValue()
MyValue = ActiveSheet.Cells(2, 4).Value
End Function
Run Code Online (Sandbox Code Playgroud)
理想情况下,除非您确实要使用ActiveSheet,否则不要使用ActiveSheet。