2017-04-18 5 views
3

インポートされたXMLファイルからExcel 2016 VBAで複数の重複を削除しようとしています。vbaのExcelでテーブルヘッダーから重複を削除

それは配列で動作します:

ActiveSheet.Range("%tableName%").RemoveDuplicates Columns:=Array(8, 10, 12, 26, 40), Header:=xlYes 

しかし、私の問題は、私はいつも私があるから重複を削除したい列の私のデータを知らないということです。今週それは9、10、15、26、40

かもしれない8、10、12、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]") 
+0

あなたはそれがすでにドキュメント内にあるいくつかの他のカラムと同じヘッダーを持っている場合は、全体の列を削除しますか?あなたは何を求めているのですか? – Universus

+0

あなたの質問を編集して、質問をすることがあります。 –

答えて

3

単純かもしれないが、それは表(エクセル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 
+1

ニース。列インデックスのプロパティを有効に使用します。 :) – sktneer

+0

ありがとうございました!それはうまくいった! – toby

関連する問題