我正在寻找一种可靠的方法来在OnLoad()事件期间最小化默认的MSAccess工具栏功能区.
我意识到可以完全隐藏工具栏,但这不是我想要做的 - 我只想最小化功能区:
DoCmd.ShowToolbar "Ribbon", acToolbarNo 'Hides the full toolbar
DoCmd.ShowToolbar "Ribbon", acToolbarYes 'Show
Run Code Online (Sandbox Code Playgroud)
我尝试了几种方法,取得了不同的成功:
在Access 2010和2013(VB7)中:
CommandBars.ExecuteMso "MinimizeRibbon"
Run Code Online (Sandbox Code Playgroud)
早期版本:
SendKeys "^{F1}", False
Run Code Online (Sandbox Code Playgroud)
这两种方法似乎都在会话之间作为TOGGLE运行.有没有一种方法来确定当前状态,然后应用适当的代码?
我的用户使用Access:2007,2010,2013
谢谢你的任何建议!
标记
Dav*_*art 10
访问2010版本及以上版本,您应该在启动表单中执行此操作.如果您只使用ExecuteMso行,它将在每次打开表单时切换您的功能区.要始终最小化启动时功能区,请使用以下代码.
If CommandBars("ribbon").Height > 100 Then
CommandBars.ExecuteMso "MinimizeRibbon"
End If
Run Code Online (Sandbox Code Playgroud)
希望这有助于一些正在寻找像我一样的答案的人
戴夫
这是我的实现的片段:
Select Case SysCmd(acSysCmdAccessVer)
Case 7: accVer = "95"
Case 8: accVer = "97"
Case 9: accVer = "2000"
Case 10: accVer = "2002"
Case 11: accVer = "2003"
Case 12: accVer = "2007"
Case 13: accVer = "Pirated!"
Case 14: accVer = "2010"
Case 15: accVer = "2013"
Case Else: accVer = "Unknown"
End Select
RibbonState = (CommandBars("Ribbon").Controls(1).Height < 100)
Select Case RibbonState
Case True
'Do nothing, already minimized
Case False
If accVer > 13 Then
CommandBars.ExecuteMso "MinimizeRibbon"
Else
SendKeys "^{F1}", False
End If
End Select
Run Code Online (Sandbox Code Playgroud)
在MSDN上查看此答案。他分享了几种不同的处理方法,包括一个示例数据库。
EG在Access 2010中,您可以使用以下方式更改功能区状态:
CommandBars.ExecuteMso "MinimizeRibbon"
Run Code Online (Sandbox Code Playgroud)
他在以下链接:
http://www.accessribbon.de/en/index.php?FAQ:19
http://www.accessribbon.de/en/index.php?下载次数:15
根据所使用的访问权限,也许可以使用不同的功能。
从-http : //windowssecrets.com/forums/showthread.php/142262-How-to-find-Access-version-in-code中获取此内容:
Public Function AccessVersionID() As String
Select Case SysCmd(acSysCmdAccessVer)
Case 7: AccessVersionID = "95"
Case 8: AccessVersionID = "97"
Case 9: AccessVersionID = "2000"
Case 10: AccessVersionID = "2002"
Case 11: AccessVersionID = "2003"
Case 12: AccessVersionID = "2007"
Case 13: AccessVersionID = "Pirated!"
Case 14: AccessVersionID = "2010"
Case 15: AccessVersionID = "2013"
Case Else: AccessVersionID = "Unknown"
End Select
End Function 'AccessVersionID()
Run Code Online (Sandbox Code Playgroud)