需要一些帮助在Excel工作表上附加Excel / VBA按钮。无论我如何滚动或缩放,我都需要它保持在屏幕上的相同位置。我最好在屏幕的左下角或右下角。
我尝试过添加一个按钮。然后,我右键单击按钮。点击格式控件 - >属性 - >选择不移动或使用单元格调整大小。我错过了一些不起作用的东西吗?
谢谢!
答案 0 :(得分:3)
我知道这篇文章已经过时了,但是这对任何人来说都是有用的。 ActiveWindow的VisibleRange属性可以解决此问题。使用这样的东西:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With ActiveSheet.OLEObjects("MY_BUTTON'S_NAME")
.Top = ActiveWindow.VisibleRange.Top + ActiveWindow.VisibleRange.Height - 5
.Left = ActiveWindow.VisibleRange.Left + ActiveWindow.VisibleRange.Width - .Width - 5
End With
End Sub
答案 1 :(得分:1)
以下是我今天早些时候发表评论的想法:)通常我们可以通过将表单的Modal属性设置为0来获得Floating User Form
,这确实是Modeless
状态。 / p>
要考虑的基本要点:
Form Initialize
事件需要考虑的其他要点:
如果您最小化Excel窗口实例,您打算如何管理按钮的状态并使其保持可见
Post about keep displaying a form even the workbook is minimized.
该文章包括以下信息,请注意最后一行:)
它们使您可以访问VBA或构成VBA项目的对象(UserForms,Workbooks等)无法提供的功能。当您调用API时,您将绕过VBA并直接在Windows上调用。这意味着您没有获得VBA通常提供的类型检查等安全机制。如果您将无效值传递给API或(一个非常常见的错误)使用ByRef参数而不是ByVal参数,您很可能完全立即崩溃Excel,您将丢失所有未保存的工作。 我建议您在确认API调用稳定之前,在调用API函数之前保存您的工作。
答案 2 :(得分:0)
答案 3 :(得分:0)
右键→属性→放置→更改为3。