返回列表 上一主題 發帖

[發問] excel VBA 從大量資料中裡找出共同重複的資料

[發問] excel VBA 從大量資料中裡找出共同重複的資料

我想要從1.2.3 找出他們三個相同的資料出來,如圖所示三個共同相同的地方是B C D,
請問我要怎樣寫VBA的語法?  
圖上的例子我只用1.2.3這三個而已,實際上是有n筆資料的,所以寫請問大大們,要如何從n筆資料找出共同的地方出來?

未命名.png (11.01 KB)

未命名.png

回復 1# Duck

同一群組內有重複的話算嗎?
學海無涯_不恥下問

TOP

因為已經篩選過,所以基本上同一個群組不會有重複

TOP

本帖最後由 Hsieh 於 2014-3-20 14:47 編輯

回復 3# Duck
  1. Sub ex()
  2. Dim Rng As Range
  3. Set d = CreateObject("Scripting.Dictionary")
  4. Set Rng = Range([B1], [B1].End(xlDown))
  5. For Each a In Rng
  6.    If Application.CountIf(Rng, a) > 1 Then d(a.Value) = ""
  7. Next
  8. If d.Count > 1 Then [D2].Resize(d.Count, 1) = Application.Transpose(d.keys)
  9. End Sub
複製代碼
用進階篩選也可以辦到
play.gif
學海無涯_不恥下問

TOP

回復 4# Hsieh


    成功了! 十分感謝高手的幫忙

TOP

回復 4# Hsieh


    不好意思您好,另外想在更進階的問您,上次找的是全部同時出現再篩選出來的結果,但現在我要換成用百分比去篩選出結果要如何改VBA?
    假設有三個如圖片上這樣的工作表單,我們如何要寫VBA篩選出來80%出現的英文字母?

接著再來,那三個工作表單都篩選出出現80%的字母後,把三個表單的篩選結果結合在一起後,我們要如何計算出他們各自出現的百分比例是多少?

想問您這些要如何用VBA去撰寫??? 可以幫幫我嗎??:'(

TOP

回復 4# Hsieh


    真的不好意思~請問Hsieh先生,我對於VBA真的還不是很熟悉,所以想請問您有辦法幫幫我昨日的那個問題嗎??
   還是我應該再重新發貼問呢?

TOP

回復 7# Duck

問題是並不清楚你的需求
是要每個工作表各別篩選還是3個工作表合計後篩選?
佔80%是以上還是剛好?
做個簡單範例檔壓縮上傳說明應該比較容易了解你的需求
學海無涯_不恥下問

TOP

回復 8# Hsieh
活頁簿1.rar (9.25 KB)

不好意思,您好~前三個工作表是要"各自"篩選出現80%以上的字母出來,再來,工作表4是假設前三個工作表篩選出來後結果的整合起來的資料(附件上工作表4的結果不是正確結果),接著我們如何顯示出工作表4裡面B欄位上每個英文字母在工作表4上出現的比率為多少?例如:字母A在工作表4上出現的百分比為1/14(約為7%)

請問這些該如何用VBA撰寫?

TOP

回復 8# Hsieh


    想請問一下,不知您是否了解我的問題了嗎?  這有辦法用vba執行嗎?

TOP

        靜思自在 : 虛空有盡.我願無窮,發願容易行願難。
返回列表 上一主題