如何通过Excel VBA禁用缩放滑块?

3
我想禁用Excel工作表中的缩放滑块。我查看了一些解决方案,但没有找到禁用缩放选项的解决方案。有一些解决方案指向将缩放设置为定义的值,但没有一个适用于禁用缩放选项本身。 非常感谢任何帮助。
我正在添加代码到ThisWorkbook以禁用工作表上的大多数可见选项。
Private Sub Workbook_Activate()

Application.ScreenUpdating = False
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)"
Application.DisplayFormulaBar = False
Application.DisplayStatusBar = Not Application.DisplayStatusBar
ActiveWindow.DisplayWorkbookTabs = False
Application.ScreenUpdating = True

End Sub

Private Sub Workbook_Deactivate()
Application.ScreenUpdating = False
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",True)"
Application.DisplayFormulaBar = True
Application.DisplayStatusBar = True
Application.ScreenUpdating = True
ActiveWindow.DisplayWorkbookTabs = True
End Sub

Private Sub Workbook_Open()
Application.ScreenUpdating = False
'Hide list of sheets
Call hide_sheets
Windows(1).WindowState = xlMaximized
ActiveWindow.DisplayGridlines = False
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)"
Application.DisplayFormulaBar = False
Application.DisplayStatusBar = Not Application.DisplayStatusBar
ActiveWindow.DisplayWorkbookTabs = False
ActiveWindow.Zoom = 100


'Lock cells in the UI sheet
ThisWorkbook.Sheets("UI").ScrollArea = "A1:t46"

'Hide scroll bar
With ActiveWindow
    .DisplayHorizontalScrollBar = False
    .DisplayVerticalScrollBar = False
End With

Application.ScreenUpdating = True    
welcomeScreen.Show 0

End Sub

这是我遇到的问题的一些屏幕截图。目前,我通过在工作簿打开时加载最大化版本的用户窗体来使用一些临时安排,因此滑块被隐藏了。 在此输入图片描述

enter image description here

2个回答

1

在寻找后,似乎没有完全禁用缩放或特定滑块的方法。如果你的主要目标是避免有人点击缩放滑块,我可能会选择完全隐藏状态栏。

Application.DisplayStatusBar = False

我已经尝试过了,但滑块仍然出现。我尝试在条形(滑块出现的窗口部分)上右键单击。点击后会弹出一个框,缩放滑块旁边有一个勾选选项。当取消勾选时,滑块就会消失。 - ashish
@ashishjain - 你确定你没有看到来自另一个应用程序的滑块吗?我为另一个项目测试过,效果非常好。 - Scott Holtzman
@ Scott,请查看附加的截图。如果有可能的解决方案,请告诉我。谢谢。 - ashish

0

如果您想单独隐藏缩放滑块,可以通过编辑注册表键来实现

HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Excel\StatusBar

通过将ZoomSlider的值设置为0

无论如何,我认为即使使用SaveSetting,也无法实现这一点。

您可以尝试编写一个.reg文件来更改目标键并VBA加载它。我不确定是否可以做到这一点,但即使它起作用,用户仍然需要在系统提示中单击“是”以允许将键加载到注册表中。

即使用户单击“是”以允许.reg文件加载和更改注册表键,Excel状态栏也不会刷新以显示/隐藏ZoomSlider,直到重新启动Excel。

简而言之,仅使用VBA隐藏缩放滑块似乎是不可实现的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接