Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在vba中删除Excel表格标题中的重复项_Excel_Vba - Fatal编程技术网

在vba中删除Excel表格标题中的重复项

在vba中删除Excel表格标题中的重复项,excel,vba,Excel,Vba,我正在尝试从导入的XML文件中删除Excel 2016 VBA中的多个重复项 它与数组一起工作: ActiveSheet.Range("%tableName%").RemoveDuplicates Columns:=Array(8, 10, 12, 26, 40), Header:=xlYes 但问题是,我并不总是知道要从哪个列中删除重复数据。本周可能是8,10,12,26,40,下周可能是9,10,15,26,40 表头名称始终相同: '8 = Range("%tableName%[udse

我正在尝试从导入的XML文件中删除Excel 2016 VBA中的多个重复项

它与数组一起工作:

ActiveSheet.Range("%tableName%").RemoveDuplicates Columns:=Array(8, 10, 12, 26, 40), Header:=xlYes
但问题是,我并不总是知道要从哪个列中删除重复数据。本周可能是8,10,12,26,40,下周可能是9,10,15,26,40

表头名称始终相同:

'8 = Range("%tableName%[udsendelses_dato]")
'10 = Range("%tableName%[start_tid]")
'12 = Range("%tableName%[udsendelses_titel]")
'26 = Range("%tableName%[Titel]")
'40 = Range("%tableName%[Varighed]")

可能更简单,但由于它是一个表(Excel VBA中的
ListObject
),因此应该执行以下操作:

With Sheet1.ListObjects("Table1")
    .Range.RemoveDuplicates Columns:=Array( _
        .ListColumns("udsendelses_dato").index, _
        .ListColumns("start_tid").index, _
        .ListColumns("udsendelses_titel").index, _
        .ListColumns("Titel").index, _
        .ListColumns("Varighed").index), _
        Header:=xlYes
End With

如果整个列的标题与文档中已有的其他列的标题相同,是否要删除该列?这就是你要问的吗?可能需要编辑你的问题,以便你提出一个好问题。很好地使用了列索引属性。:)