I have an excel workbook with two shapes on Sheet1 like below
我的要求是当用户向工作表右侧导航时,即向 headers24、header25 等导航时,我希望工作表上的两个形状随用户一起向右侧移动。
有人可以为此提出任何想法吗?
Thanks
试试这个..是的,很简单..
将此代码放置在形状所在的工作表模块中。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With ActiveSheet.Shapes(1)
.Left = ActiveWindow.VisibleRange(2, 2).Left
.Top = ActiveWindow.VisibleRange(2, 2).Top
End With
End Sub
坐标 (2, 2) 是您希望在沿着键盘滚动时形状固定的位置。
但是,在巨大的工作表上如果没有滚动条,工作会很烦人。所以我认为你可以使用刷新 ontime ,将此代码放在模块中
Private eTime
Sub ScreenRefresh()
With ThisWorkbook.Worksheets("Sheet1").Shapes(1)
.Left = ThisWorkbook.Windows(1).VisibleRange(2, 2).Left
.Top = ThisWorkbook.Windows(1).VisibleRange(2, 2).Top
End With
End Sub
Sub StartTimedRefresh()
Call ScreenRefresh
eTime = Now + TimeValue("00:00:01")
Application.OnTime eTime, "StartTimedRefresh"
End Sub
Sub StopTimer()
Application.OnTime eTime, "StartTimedRefresh", , False
End Sub
Sheet1 中的以下代码(形状所在的位置)
Private Sub Worksheet_Activate()
Call StartTimedRefresh
End Sub
Private Sub Worksheet_Deactivate()
Call StopTimer
End Sub
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)