返回列表 上一主題 發帖

[發問] 表格內依排名取類型(有重覆排名)

[發問] 表格內依排名取類型(有重覆排名)

Dear大大們:

問題請教,如附擋

再煩請賜教

感謝

表格內排名.zip (6.54 KB)

回復 12# jj369963

1.多條件統計在統計表的公式中加入各條件即可
2.G欄插入欄位,因為原本join名稱中要對名次的引數是欄位的相對參照
=joinstr(IF(ar=LARGE(rankar(ar),COLUMN(A$1)),Sheet1!$G$1:$L$1,""),",")
當名稱用在N欄時是取第一大值,但在N欄之前插入欄位,則會N欄跑到O欄,則COLUMN(A$1)變成COLUMN(B$1)
造成取到第二名
公式改成
=joinstr(IF(ar=LARGE(rankar(ar),COLUMN()-COLUMN(Sheet1!$M$2)),Sheet1!$G$1:$L$1,""),",")
只要插入欄位是在M欄之前都可以隨之改變
    重覆排名_進階發問3.zip (20.16 KB)
學海無涯_不恥下問

TOP

回復 11# Hsieh

Dear  Hsieh版大:
  問題如附檔,如有不清楚,再煩請回覆。

1.加入下拉式窗為條件做統計判斷
2.因VBA語法關係的相對位置,如在G欄前再加欄位,數據上會跑掉,想請問有方法可以改善嗎?

感謝

重覆排名_進階發問3.zip (18.48 KB)

TOP

回復 10# jj369963

           問題1:如何配合下拉選單的條件,正確計算統計有重覆排名(可並列排名)
目前是每列對應排名,產生多列的結果
加入下拉選單的條件,是說資料庫多了一個欄位,然後要篩選符合條件的列做排名嗎?
若是如此統計表格式只出現一列資料囉

            問題2:增加欄位時,數據會有問題,此部分有方案解決嗎?
增加欄位是標題列多了參與排名的人增加,或是如上問題多了條件欄位?
請以正確表格形式說明
學海無涯_不恥下問

TOP

回復 9# Hsieh


       Dear  Hsieh版大:
         感謝回應。
               原來"Module 裡面存著若干的 Procedure,只要看到用 Sub 及 EndSub 包起來,或是 Function 及 EndSub 包起來的都是 Procedure"
              另外,想再請問以下:
        
            問題1:如何配合下拉選單的條件,正確計算統計有重覆排名(可並列排名)
            問題2:增加欄位時,數據會有問題,此部分有方案解決嗎?
             如附擋,感謝

             重覆排名_進階發問2.zip (16.97 KB)

TOP

回復 8# jj369963

自定義函數程式碼必須寫在一般模組內,不能寫在工作表模組

   
學海無涯_不恥下問

TOP

回復 7# Hsieh


       Dear  Hsieh版大:
   
            您真是太厲害了,但我依續建立 ar & join的名稱,也貼上程式碼

         為何出現error,請問我漏了什麼操作細節嗎?

            如附檔,感謝!

                  error.rar (12.75 KB)

TOP

回復 6# jj369963

這種陣列字串連接一定要VBA輔助

    重覆排名_進階發問.zip (17.13 KB)
學海無涯_不恥下問

TOP

回復 5# Hsieh


    Dear  Hsieh版大:
           大大感謝您的回覆,你的回覆為"使用VBA寫自定義函數取得範圍內不重複排名陣列"
              那請問如果"使用VBA寫自定義函數取得範圍內重複排名陣列"又該怎麼寫呢??

       如附擋,感謝回應。

       每天從excel中發現小小的感動

             重覆排名_進階發問2xlsx.zip (9.35 KB)

TOP

本帖最後由 Hsieh 於 2014-9-1 22:05 編輯

回復 4# jj369963
N2陣列公式
=INDEX($G$1:$L$1,,MATCH(SMALL(RANK($G2:$L2,$G2:$L2,0)+COUNTIF(OFFSET($G2,,{0,1,2,3,4,5},,{6,5,4,3,2,1}),$G2:$L2),COLUMN(A$1)),RANK($G2:$L2,$G2:$L2)+COUNTIF(OFFSET($G2,,{0,1,2,3,4,5},,{6,5,4,3,2,1}),$G2:$L2),0))
附檔內使用VBA寫自定義函數取得範圍內不重複排名陣列
(其程序與陣列公式的觀念流程相同)
配合INDEX,MATCH等函數抓取對應名稱
參考看看

重覆排名_進階發問xlsx.rar (17.78 KB)
學海無涯_不恥下問

TOP

        靜思自在 : 待人退一步,愛人寬一寸,就會活得很快樂。
返回列表 上一主題