【问题标题】:Excel VBA Userform editor keeps resizing by itselfExcel VBA 用户窗体编辑器不断自行调整大小
【发布时间】:2021-01-02 05:21:36
【问题描述】:

我在 Excel 中创建了一个用户表单并保存了它。当我打开编辑器时,表单会自行调整大小。当我单击表单的右下角来调整它的大小时,它会自动弹回原来的预期大小(参见下面的GIF)。

这也会影响运行时的表单。这是 Microsoft 需要修复的错误,还是我可以禁用某种自动调整大小设置?

我确实有这个带有硬编码预期大小的初始化代码:

Private Sub UserForm_Initialize()
    Me.Width = 402.6
    Me.Height = 430.8
    
    Me.StartUpPosition = 0
    Me.Left = Application.Left + (0.5 * Application.Width) - (0.5 * Me.Width)
    Me.Top = Application.Top + (0.5 * Application.Height) - (0.5 * Me.Height)
End Sub

【问题讨论】:

  • 它看起来像 DPI 意识,但我不知道 VBA 用户窗体支持它。 docs.microsoft.com/en-us/office/client-developer/ddpi/…
  • 我尝试设置Optimize for compatibility 选项。但启用此设置后,当我尝试调整表单大小时,excel 会立即崩溃。
  • 你这样做的时候有没有拿出你的代码?
  • 现在它不再崩溃了。让我们看看这是否有效。不,我没有取出我的代码。

标签: excel vba userform


【解决方案1】:

感谢@braX 为我指明了正确的方向。好像是DPI awareness issue

我的解决方案是检查 Optimize for compatibility 选项,然后重新启动 Excel。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多