在Excel中lockingselect框大小

这似乎是一个简单的事情,但我无法弄清楚,或在网上find它。

如果我select列中的5个单元格(比如A1:A5),并且我想将此select形状(列1:5)移到(到B1:B5); 有没有捷径可以做到这一点? 目前我按左箭头,select框更改大小只是B1,我必须点击shift并selectB2:B5。 理想情况下,我想发现一个“locking”select框形状的热键。

有同事build议写一个macros,但是这在很多情况下是无效的。 例如,如果不是列,我想用一行或不同大小的形状做同样的事情。 excel似乎有内置此function。

我不确定一个macros是如何失效的。 我会编写类似于下面的程序,然后将它们分配给热键。 请让我知道这对你有没有用。

Option Explicit Public rowDim As Long Public colDim As Long Public putSel as Boolean Sub togglePutSel() putSel = Not putSel End Sub Sub GetSelShape() rowDim = Selection.Rows.Count colDim = Selection.Columns.Count putSel = True End Sub Sub PutSelShape() Selection.Resize(rowDim, colDim).Select End Sub 

如果你想让它工作,只要你按下箭头键,然后在你的工作表代码,你可以使用这个。 你可能想要做一个快速检查, rowDimcolDim不是0.唯一的问题是你会被这种行为困住,除非你创build一个触发器来停止调用PutSelShape 。 所以,我会build议一个macros(热键到GetSelShape )切换,另一个热键为togglePutSel

 Private Sub Worksheet_SelectionChange(ByVal Target As Range) If putSel Then Call PutSelShape End If End Sub