【发布时间】:2016-11-14 21:20:17
【问题描述】:
我有一个 Excel 文件,我想在其中删除无用的列。
假设我有 4 列:“ID”、“姓名”、“姓氏”、“工作”。我要做的是删除所有不是“ID”和“Job”的列。
我尝试使用 Range.Find 方法,但显然有些地方我弄错了。
任何帮助表示赞赏
myArray = Array("ID", "Job")
'Delete columns which title aren't in myArray
For j = mycol To 1 Step -1 'col by col
For k = 0 To 4 'for each element in myArray
' Delete col where no elements of myArray are present.
Columns(j).Delete
Next k
Next j
编辑: 列名是指每列的第一行。所以 A1=ID,B1=Name 等等。
【问题讨论】:
-
列名是什么意思?它只是某行单元格中的标题还是您正在使用表格(ListObjects)?
-
@KazimierzJawor 列名是指每列的第一行。所以 A1=ID,B1=Name 等等。
-
@Daniel Mc 检查下面我的答案中的代码,如果这就是您在帖子中的意思,请告诉我
-
@ShaiRado 这正是我的意思。我不敢相信我没有发现这么明显的东西。谢谢
-
@DanielMc 不客气
标签: vba excel excel-2010