我正在构建一个工具,用户选择的单元格内容随箭头形状移动。
下面的代码非常适合移动一组或多组相邻单元格。 但是,反转代码似乎很棘手(偏移中的+1不起作用: - ?)
有什么想法吗? 谢谢, 奥古斯丁
Sub Move_Up()
Selection.Cut
Selection.Offset(-1, 0).Select
Selection.Insert Shift:=xlDown
End Sub
答案 0 :(得分:0)
如果您要将 Selected
单元格块向上移动一行,则:
Sub ShiftBlockUp()
 Dim r As Range
设r =选择
 Intersect(r(1).EntireRow,r)。Offset(-1,0).Delete Shift:= xlUp
 End Sub

&#xA;&#xA; < p>如果要将 Selected
单元格块向下移动一行,则:&#xA;&#xA; Sub ShiftBlockDown()&#xA; Dim r As Range&#xA;设r =选择&#xA;相交(r(1).EntireRow,r)。插入Shift:= xlDown,CopyOrigin:= xlFormatFromLeftOrAbove&#xA; End Sub&#xA;
&#xA;
答案 1 :(得分:0)
假设要移动单元格并且覆盖的单元格只移动移动的位置,代码可能如下:
Sub MoveUp()
Selection.Rows(Selection.Rows.count + 1).Insert Shift:=xlDown
Selection.Rows(1).Offset(-1).Cut Selection.Rows(Selection.Rows.count + 1)
Selection.Rows(1).Offset(-1).Delete Shift:=xlUp
Selection.Offset(-1).Select
End Sub
Sub MoveDown()
Selection.Rows(1).Insert Shift:=xlDown
Selection.Rows(Selection.Rows.count).Offset(2).Cut Selection.Rows(1)
Selection.Rows(Selection.Rows.count).Offset(2).Delete Shift:=xlUp
Selection.Offset(1).Select
End Sub