Excel 删除一行单元格,但不删除整行
我只需要删除单元格7B:7G,而不删除7A。如何使用excel VBA执行此操作 以下是我现在掌握的代码:Excel 删除一行单元格,但不删除整行,excel,vba,Excel,Vba,我只需要删除单元格7B:7G,而不删除7A。如何使用excel VBA执行此操作 以下是我现在掌握的代码: Option Explicit Sub Import() Dim lastrow As Long Dim wsIMP As Worksheet 'Import Dim wsTOT As Worksheet 'Total Dim wsSHI As Worksheet 'Shipped Dim wsEST As Worksheet 'Estimate
Option Explicit
Sub Import()
Dim lastrow As Long
Dim wsIMP As Worksheet 'Import
Dim wsTOT As Worksheet 'Total
Dim wsSHI As Worksheet 'Shipped
Dim wsEST As Worksheet 'Estimate
Dim wsISS As Worksheet 'Issued
Dim cel As Range
Set wsIMP = Sheets("Import")
Set wsTOT = Sheets("Total")
Set wsSHI = Sheets("Shipped")
Set wsEST = Sheets("Estimate")
Set wsISS = Sheets("Issued")
With wsIMP
wsIMP.Range("E6").Cut wsIMP.Range("E5")
wsIMP.Range("B7:G7").Delete (xlShiftUp)
End With
End Sub
您需要做的是删除范围
B7:G7
,向左或向上移动单元格(取决于要求):
或
使用With时,不应在中间两行中提到wsIMP。将代码更改为:
With wsIMP
.Range("E6").Cut .Range("E5")
.Range("B7:G7").Delete (xlShiftUp)
End With
还要注意第二范围表示法。它是B7:G7而不是7B:7G我实际上是这样做的:
Range(“B7:G7”)。删除xlShiftUp
,它就能完美工作。谢谢你的帮助,如果你不。在Range…,则宏将使用activesheet而不是wsIMP。如果要在非活动工作表的工作表中使用宏,这可能很重要
range("B7:G7").delete(xlShiftUp)
With wsIMP
.Range("E6").Cut .Range("E5")
.Range("B7:G7").Delete (xlShiftUp)
End With