返回列表 上一主題 發帖

[發問] 計算總數並重新排序

回復 1# wei9133

哈,
如果按照你現在僅列出單行的方式,
你也可以參考看看這個~

排序.rar (15.63 KB)
  1. Option Explicit

  2. Sub PrintList()
  3.     Dim PT As Range
  4.     Dim i%, iM%, j%, jM%
  5.     Call Reset
  6.     iM = Range("C2")
  7.     jM = Range("C3")
  8.     Set PT = Range("E3")
  9.     For j = 1 To jM
  10.         For i = 1 To iM
  11.             PT = j + (i - 1) * jM
  12.             Set PT = PT.Offset(1)
  13.         Next
  14.     Next
  15.     Range("C4") = iM * jM
  16. End Sub

  17. Sub Reset()
  18.     Dim PT As Range
  19.     Set PT = Cells(Cells.Rows.Count, 5).End(xlUp)
  20.     If PT.Row = 2 Then Set PT = Range("E3")
  21.     Range("E3:E" & PT.Row).ClearContents
  22.     Range("C4").ClearContents
  23. End Sub
複製代碼

TOP

排序.rar (30.38 KB) 回復 4# wei9133


   
函數如果改成這樣呢?
有符合你的需求嗎?
還是你必須要由另一個數列進行置換?

TOP

本帖最後由 a5007185 於 2018-8-1 23:22 編輯

想釐清一個問題,
如果總數是428,
則理論上429~435都是空值,
而且會集中在第15落那個集落中。

依據你提出的條件,
應該是第8至15的集合各缺少一個元素吧?
因為你排列是十五個集合分開分配的。

另外如果需要連整列複製這個都做起來是可行的。

TOP

回復 6# wei9133


抱歉,
我自己實際調整過後,
有了解你的問題了。

我調整好兩個版本給你參考,
一個是用函數的方式,(公式套用到第4000不夠可以自己繼續拉)
另一個是用VBA的方式。

排序.rar (49.15 KB)

TOP

回復 13# wei9133

弄好囉

180804_表格排序.rar (27.42 KB)

TOP

回復 17# wei9133

再不行,我們私下喬
    表格排序.zip (87.43 KB)

TOP

我只能說當文字說明已經無法構成有效溝通的時候,
請嘗試其他表示需求的方法,e.g,電話或整個操作過程截圖

我一直到現在才知道我列出來的數字只是個引子,
如果你有注意我的結果中第九行的資料是33,
剛好對應你第三十三行的資料是9,
請盡可能地以文字外的語言輔助說明,
要不然這樣花了這麼多時間我現在才搞懂你的需求,
我覺得這樣對雙方都很費時。

我有空我會再調整表格,
若之後再有問題,
請麻煩你私訊我你的Line。

TOP

回復 19# wei9133

若陣列的中數字即表示你欲填進資料的順序,
則A欄會計算陣列中由左至右、由上至下的相對應序列,
將資料按順序填入B欄,
再按下「排序」即可獲得按以上規律產生的資料順序。
表格排序.zip (88.53 KB)
若還有什麼意外,
再麻煩你私訊我你的Line,
我們電話上討論。
1

評分人數

TOP

回復 23# wei9133


   我已經加你了

TOP

回復 24# 准提部林

謝謝大大肯定!

過去有使用過你的金千里會計帳,
當時幫助很大,謝謝!

TOP

        靜思自在 : 能幹不幹,不如苦幹實幹。
返回列表 上一主題