我有一段Excel VBA代码,如果工作表不受保护,则工作正常,但受保护时则无效。我已经阅读了先前的类似查询,但是认为在这种情况下它们不适用-建议的修复程序不适用,或者需要反复取消保护/重新保护工作表,如果可能的话,我希望避免这些问题。
我的代码如下:
NaN
使用“出现错误”是为了避免在找到零个空单元格时发生循环。
print((df['Yes'] / df['Num']).replace(np.inf, np.nan))
0 NaN
1 0.600000
2 NaN
3 0.333333
4 0.000000
dtype: float64
设置了单元格格式,因此单元格未锁定也不隐藏。
当工作表不受保护时,特殊单元格行正确返回空白单元格的范围,但是,当受保护的特殊单元格总是出现错误时,就像找不到空单元格一样。
感谢所有帮助。
答案 0 :(得分:1)
仅在设置保护后才能使用用户界面。宏将起作用,工作表将受到保护,以防用户自己进行更改。
在ThisWorkbook-module-section中:
prefix
调整您的密码和工作表名称,(确保在运行宏(即重新打开工作簿时已打开workbook-open is事件)