0
我正尝试在用户看不到的工作表中创建自定义属性。我的理由如下:Excel(2013)VBA - 向工作表添加自定义属性
- 避免
CustomProperties
集合(不能直接访问), - 避免使用全局变量(得到的工作簿中随机掉落保存),或
- 使用工作表上的特定命名的单元格检索和插入值似乎很慢。
下面的代码似乎工作,我可以使用所创建的sht
对象的所有需要的工作表属性和方法。缺点是智能丧失,这对我来说不是问题。
尽管这似乎有效,但我的代码现在似乎随机变得不稳定,除了我可能违反了某些事情之外,我找不到任何直接原因。
我目前在5个工作表中有7个自定义属性。
这里是在工作表中的代码示例(顶部):
Private pPassword As String
Public Property Get Password() As String
Password = pPassword
End Property
Public Property Let Password(Value As String)
pPassword = Value
End Property
这里是一个模块中的代码示例:
Sub doSomething(currentSheetName as string)
Dim Password as String
Dim sht as object
Set sht = ThisWorkbook.Worksheets(currentSheetName)
Blahblahblah code
Password = sht.password
Blahblahblah code
End sub
“随机变得不稳定”是什么意思?智能感知和缓慢是由于您的电话被延迟。如果你想让它们早日绑定,请将它们声明为接口成员。 – Comintern
“随机变得不稳定”意味着我得到“Microsoft Excel已停止工作”,因为没有明显原因而定期崩溃。我以前试图使用早期绑定(Dim sht作为工作表),但无法返回自定义属性。我不确定“将它们声明为接口成员”是什么意思?请解释。谢谢 – LewM