从特定行开始删除不需要的列 – excel vba

出于某种原因,我无法弄清楚如何做到这一点……这似乎很基本:

尝试从特定行开始删除不需要的列。

例如:想要从Wsh2的第10行开始删除C,D,E,M,N和L列。

'deleting columns that are unwanted Cells(wsh2.Cells("C10"), wsh2.Cells("C10").End(xlDown)).EntireColumn.Delete Cells(wsh2.Cells("D10"), wsh2.Cells("C10").End(xlDown)).EntireColumn.Delete Cells(wsh2.Cells("E10"), wsh2.Cells("C10").End(xlDown)).EntireColumn.Delete Cells(wsh2.Cells("M10"), wsh2.Cells("C10").End(xlDown)).EntireColumn.Delete Cells(wsh2.Cells("N10"), wsh2.Cells("C10").End(xlDown)).EntireColumn.Delete Cells(wsh2.Cells("L10"), wsh2.Cells("C10").End(xlDown)).EntireColumn.Delete End Sub 

我已经调整了以前在这里find的使用Range的代码。 我也试图使用联盟和范围,但似乎无法弄清楚。

基本上:尝试删除从特定行开始的特定列之后,我从之前的工作表中复制了一系列的行。

任何帮助将是伟大的。 谢谢!

如果你使用EntireColumn.Delete它将删除整个列,你需要得到的范围和删除,而不是,例如。

 Range("C10:C" & Rows.Count).Delete 

正如你所说,你实际上并不想删除整个列。 你想清除单元格C10:CendD10:DendE10:EendM10:MendN10:NendL10:Lend 。 这是你想让你的代码做的。 导航到所选的单元格,并清除该特定坐标下的所有单元格。

为了方便起见,您可以循环遍历从C10C10000所有单元格,并删除每个单元格的内容,例如,实现起来非常简单,但可能不是最有效的。