我通过Apache POI XSSF创建一个Excel文件,并使用密码锁定工作表,这样用户就不能更改前两行和前五列的值(锁定工作表并允许编辑其他单元格)。一切正常,唯一的问题是用户不能调整列的大小,因此他既不能改变列的大小,也不能调整列的大小来读取所有单元格值。即使工作表受到保护,也可以允许调整列</e
我使用以下代码锁定某些单元格的内容 With ws .Cells.Locked问题是用户无法对单元格进行排序、筛选或应用边框,因为这些Excel菜单项被禁用。、AllowFiltering:=True和DrawingObjects:=True会像AllowFormattingColumns:=True和AllowFormattingRows:=True一样允许调整大小
; Do more stuff
当我在行上设置断点并尝试从“即时”窗口查询that_goddamn_range.Locked的值时,可以正常工作,但设置它会失败。但是,如果我运行that_goddamn_range.Select,破坏宏,取消工作表保护(它在选择更改时自动重新保护),然后右键单击,选择属性,切换到保护选项卡,勾选锁定,然后确认,但一切正常。