2012-07-14 12 views
0

我想使用VBA運行幾個過濾器,然後將數據輸出到「分析」工作表。在檢查VBA中的重複項之前排序URLS

一切工作,因爲它應該到目前爲止 - 但我現在試圖消除URL重複。

If unique_1 <> Sheets(1).Cells(x, 11) Then

中的代碼片段將消除重複的,但前提是我已經按網址分類(這是不是我可以用數據做前期)

我希望我能使用VBA進行排序,但目前還沒有能夠實現,而我的眼睛正在殺死我。任何幫助,將不勝感激!

在此先感謝您的幫助!

If Sheets(1).Cells(x, 12) = "X URL" Then 
     If Sheets(1).Cells(x, 9) > 4 And Sheets(1).Cells(x, 9) < 10 Then    
      '//NEED TO SORT URLS HERE FIRST - BEFORE I CAN FIND DUPES//     
      If unique_1 <> Sheets(1).Cells(x, 11) Then 
       O_2 = O_2 + 1 
      End If 
       unique_1 = Sheets(1).Cells(x, 11) 
     End If 
End If 
+0

我通常依賴於在我的代碼中創建排序時記錄宏 - 這裏有很多參數;所以我記錄了排序,然後使用生成的代碼進行遊戲。 (總是感覺有點骯髒的錄製宏,但沒有一點試圖記住一切) – whytheq 2012-07-14 15:24:58

回答

3

在任何範圍內你想to sort

作爲一個側面說明使用Range.Sort,沒有在你列出的代碼似乎刪除重複。最多隻能計算有多少。

+0

「如果unique_1 <> Sheets(1).Cells(x,11)然後」部分將具體計算有多少非模糊但只有當他們先排序) - 我不是指刪除/刪除 - 但從總數中刪除它們。 Range.Sort - 我嘗試過使用,但無法正確獲取格式,因爲它會根據我可以找到的所有示例不斷拋出錯誤。 – CodeCore 2012-07-14 05:48:21

+0

繼續並執行您希望代碼執行的操作[在錄製宏時]( http://office.microsoft.com/en-us/excel-help/record-and-use-excel-macros-HA001054837.aspx)。你應該能夠很容易地使用你想要的生成代碼。 – 2012-07-14 06:49:33

+0

@EpicVision:您不需要排序以刪除重複項。你使用哪種Excel版本? – 2012-07-14 10:50:41

0

除非我誤解了這個問題,爲什麼不使用自動篩選器進行唯一條目? 這將在您指定的列中輸出一個列表,以便您可以看到發生了什麼。

Range("URL Range").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range(_ 
     "Output Range"), Unique:=True 
+0

偉大 - 嘗試出 – CodeCore 2012-07-16 04:16:08

+0

這個工作適合你嗎? – 2012-07-17 20:00:00