macros观的小转折 – 向下移动多列

我被卡住了..

我已经使用了很长时间的macros,但现在我需要添加一个functionmacros。

Sub InsRow()

Dim c Application.ScreenUpdating = False For Each c In Selection If c.Offset(0, -1) <> c And c.Offset(0, -1) <> "" Then c.Offset(0, 1).Insert shift:=xlDown c.Insert Shift:=xlDown End If Next c Application.ScreenUpdating = True 

结束小组

这个macros看看列B中的值是否与列A中的值相同。如果不是这种情况,它会将列B和C的单元格向下移动,直到它们再次同步。 但是,我想要列d直到….也下移。 如何将此function添加到macros?

提前致谢。

尝试这样的事情:

 Sub InsRow() Dim c Application.ScreenUpdating = False For Each c In Selection If c.Offset(0, -1) <> c And c.Offset(0, -1) <> "" Then 'Change the "D" to whichever column you want to shift down. Range(cells(c.Row,"B"),cells(c.Row,"D")).Insert shift:=xlDown c.Insert Shift:=xlDown End If Next c Application.ScreenUpdating = True End Sub 

上面的小节将从B列的所有列向下移动到您指定的列。 目前它将把列B,C和D向下移动。