返回列表 上一主題 發帖

[發問] 利用下拉式選單選取資料,並進行進階篩選

回復 2# Hsieh


    Hsieh 您好:

不知我的問題是否描述有讓你不清楚的地方嗎? 哪個部分不瞭解,我可以再加以說明,希望你能幫幫我這個vba初學者~ 萬分感激 :)

TOP

回復 2# Hsieh

抱歉~由於忘記案回覆,故在重新發一篇~


感謝高手的襄助,但不好意思我沒把問題說清楚,我是希望第B欄位選取不重復至G欄位,第E欄位選取不重復至J欄位,是它們各自選取不重複,抱歉~ 語意沒說好....


另外,我想再請教一下,不知道語法是否可以執行說,我想先在A欄位選取不重複至L欄位,則M欄位可以去自動計算出,L欄位的每個一項目他們在B欄位不重複出現的次數是幾次?!

如下圖所示,我可以在L欄位裡的"19168"這個項目中計算出他分別有2013061011226和2013061011470這兩筆紀錄,故是在M欄位計算出現了2次,不知是否可以執行?



煩請高手能解救在下...感激不盡~~

未命名.png (23.23 KB)

未命名.png

TOP

感謝高手的襄助,但不好意思我沒把問題說清楚,我是希望第B欄位選取不重復至G欄位,第E欄位選取不重復至J欄位,是它們各自選取不重複,抱歉~ 語意沒說好....

另外,我想再請教一下,不知道語法是否可以執行說,我想先在A欄位選取不重複至L欄位,則M欄位可以去自動計算出,L欄位的每個一項目他們在B欄位不重複出現的次數是幾次?!

如下圖所示,我可以在L欄位裡的"19168"這個項目中計算出他分別有2013061011226和2013061011470這兩筆紀錄,故是在M欄位計算出現了2次,不知是否可以執行?



煩請高手能解救在下...感激不盡~~

未命名.png (23.23 KB)

未命名.png

TOP

本帖最後由 Hsieh 於 2014-7-25 10:59 編輯

回復 1# Duck

不重複定義是否B&D不重複?
play.gif
如果是的話
插入自訂表單,布置一個下拉清單
表單模組中程式碼如下
  1. Private Sub ComboBox1_Change()
  2. Set d = CreateObject("Scripting.Dictionary")
  3. With 工作表2
  4. Set Rng = 工作表2.[A1]
  5. .[A:E].Clear
  6. With 工作表1
  7.    With .Range("A1").CurrentRegion
  8.       .AutoFilter 4, ComboBox1
  9.       .SpecialCells(xlCellTypeVisible).Copy Rng
  10.       .AutoFilter
  11.    End With
  12. End With
  13. mystr = "=COUNTIF(C5,RC9)/(COUNTA(C7)-1)"
  14. For Each a In .Range(.[B2], .[B1].End(xlDown))
  15.     d(a & a.Offset(, 3)) = Array(a, "", a.Offset(, 3))
  16. Next
  17. .Range("G1").CurrentRegion.Offset(1).ClearContents
  18. .[G2].Resize(d.Count, 3) = Application.Transpose(Application.Transpose(d.items))
  19. .[J2].Resize(d.Count, 1).FormulaR1C1 = mystr
  20. .[H2] = d.Count
  21. End With
  22. Unload Me
  23. End Sub

  24. Private Sub UserForm_Initialize()
  25. Set d = CreateObject("Scripting.Dictionary")
  26. With 工作表1
  27.    For Each a In .Range(.[D2], .[D2].End(xlDown))
  28.       d(a.Text) = ""
  29.    Next
  30. End With
  31. ComboBox1.List = d.keys
  32. End Sub
複製代碼
上傳用.zip (28.34 KB)
學海無涯_不恥下問

TOP

        靜思自在 : 人的心地是一畦田,土地沒有播下好種子,也長不出好的果實。 -
返回列表 上一主題