向上移动范围以使用户input应用程序重叠空单元格

在这里输入图像说明 我有这个范围的单元格,我想要移动以消除这些空行的单元格。 我已经做了这个使用input框,以便用户可以select具有这样的问题的范围。 我试过这个代码,但运行后,我想要上移的行,它消失了。

Sub Shiftup() Dim rng As Range Dim inp As Range Set inp = Selection On Error Resume Next Set rng = Application.InputBox("Range to Shift Up", Type:=8) On Error GoTo 0 If TypeName(rng) <> "Range" Then Exit Sub Else rng.Select rng.Rows.Delete Shift:=xlShiftUp End If End Sub 

 Set rng = Application.InputBox("Range to delete", Type:=8) 

和顺便说一句,你不需要select范围,语句rng.select只会导致你麻烦(即如果工作表不活跃),它没有在你的代码中实现。