gpt4 book ai didi

vba - 爬行 ActiveX 按钮

转载 作者:行者123 更新时间:2023-12-04 21:03:34 27 4
gpt4 key购买 nike

再会!

我有一个 ActiveX 按钮(根据从顶部开始的行数锚定在位置上),它运行 VBA 代码以在特定点插入指定数量的复制行。代码本身工作正常,但按钮“克隆”自身并将自身覆盖在新行的位置,即使我设置了 Application.ScreenUpdating = False .再次启用屏幕更新后,屏幕会刷新并且克隆会消失。

我已经找到了一行代码:Selection.Insert Shift:=xlDown
一旦该行运行,按钮就会被克隆。

例如,如果我在此宏中添加了 3 个空白行,则在执行上述命令直到子例程完成后,按钮将如下所示:

enter image description here

为了让这更有趣,当我使用 Excel 2010 时没有发生这种行为。前几天我升级到 Excel 2013,现在出现了这个问题。

有什么想法吗?

最佳答案

当 Application.ScreenUpdating = False 时,我遇到了类似的行为。我不认为有一个很好的答案。据我所知,只有一些解决方法。

您可能会在插入时向上或向下按下按钮,并且当 Application.ScreenUpdating = False 事情仍然“有点”更新时。如果你想让它消失,你可以尝试一些事情。

  • 在插入之前将 screenupdating 设置为 true ,然后在插入之后设置为 false ,这样您就不会获得“克隆”。
  • 插入后重新定位按钮。
  • 删除按钮,插入,然后重绘它们。
  • 通过简化代码等,在插入和 Application.ScreenUpdating = True 之间使用更少的计算机资源。

  • 或者发布在插入和 Application.ScreenUpdating = True 之间执行的代码(尽可能简化,但演示问题)。

    我希望这会有所帮助。

    关于vba - 爬行 ActiveX 按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30675047/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com