VBA 最小化 Excel 中的功能区

标签 vba excel

我想使用 VBA 最小化 Excel 2013 中的功能区。我不想切换功能区,也不想隐藏所有内容,包括"file"、“插入”等。我尝试了几种不同的方法,但没有一个满足我想要的。

这隐藏了一切:

Application.ExecuteExcel4Macro "Show.ToolBar(""Ribbon"",False)

此切换:

CommandBars.ExecuteMso "MinimizeRibbon"

这也会切换:

SendKeys "^{F1}"

如何简单地强制最小化功能区?

最佳答案

测量功能区高度,切换它,再次测量,如果更高,则重新切换。最好还设置 Application.Screenupdating = false。

ht1 = Application.CommandBars("Ribbon").Height
SendKeys "^{F1}", False
DoEvents
ht2 = Application.CommandBars("Ribbon").Height
If ht2 > ht1 Then SendKeys "^{F1}", False

我确实讨厌人们质疑你为什么想做你想做的事。我有一个独裁者应用程序,需要 100% 控制与 Excel 的交互。

关于VBA 最小化 Excel 中的功能区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19019546/

相关文章:

c# - 无法使用 UAC 从 Excel 在 Hkey_Local_Machine 中创建注册表项

vba - 在不使用剪贴板的情况下将注释从一个工作表转移到另一个工作表

excel - 动态自动填充目标

excel - 如何让我的 Excel 公式在以编程方式添加值后进行计算

excel - 如何修改我的代码以使其运行得更快?

excel - 分组中均等地生成随机数

algorithm - VBA Excel-返回数字或字符串的函数

linux - 在 Linux 中使用 AWK 将日期转换为纪元时间

excel - VBA 项目资源管理器仍然显示由宏关闭的 Excel 工作簿

excel - 如何将“Worksheet_SelectionChange 事件”中 "Target"范围的内容传递给子?