返回列表 上一主題 發帖

如何判斷為同一組

如何判斷為同一組

請問,如何依A,B及D欄為條件,判斷是否為同一組?

活頁簿1.zip (8.66 KB)

希望支持!

也謝謝邏輯大大。
希望支持!

TOP

需要與vlookup搭配使用,謝謝你的幫忙。
希望支持!

TOP

回復 12# s7659109

如果是上百萬的,
我想如果是透過Excel還是需要一點時間,
我不太清楚你原始資料上百萬筆是什麼樣的狀況,
但是我將你原本的範例用自動填滿至Excel最大行數 1,048,576,
試著運作的結果大致上花了快兩分鐘的時間,
我想如果還需要減少運作時間,
可能你需要考慮其他語言的協助,
這樣可能對於你來講比較實用。

另外我想確定一下你附檔的用意,
我不太清楚你想表達的是什麼,
我不知道這和你原本的問題有什麼關聯性。

TOP

可以了,但如果超過百萬row,如何優化,加快速度,如附檔案

0801.zip (109.57 KB)

希望支持!

TOP

回復 10# s7659109


    以no1為例第2列至第12列都是同組,其中d欄cr(借方),dr(貸方),確實以:a欄b欄及d欄為判讀要件


參考你的附檔
1.同組標同一編號(條件為a:b:d相同)
2.希望結果(條件為a:b相同)
我的理解是這樣...
依照你的希望結果d欄位沒有參考的條件...
dr cr不管哪個都一樣歸類同組,
a與b成立就歸類同組了。

借3#大大程序修改,
這樣就跟你"希望結果"一樣了!?
  1. Sub NumberCode()
  2.     Dim i%, Str$, ArrStr$
  3.     i = 2
  4.     ArrStr = "" '清空已記錄到的條件
  5.     Do Until Range("C" & i) = ""
  6.         '將A欄、B欄、D欄合併為一個字串作為條件
  7.         Str = Range("A" & i) & Range("B" & i) '& Range("D" & i)
  8.         '若該條件未記錄過,則記錄之。
  9.         If InStr("," & ArrStr & ",", "," & Str & ",") = 0 Then ArrStr = ArrStr & "," & Str
  10.         '撈出Str在陣列ArrStr中的索引值
  11.         Range("F" & i) = "No. " & UBound(Split(Split(ArrStr, Str)(0), ","))
  12.         i = i + 1
  13.     Loop
  14. End Sub
複製代碼
一分努力,一分收穫。
發問題前可以先搜索內文是否有相關範例。

TOP

以no1為例第2列至第12列都是同組,其中d欄cr(借方),dr(貸方),確實以:a欄b欄及d欄為判讀要件
希望支持!

TOP

以no1為例第2列至第12列都是同組,其中d欄cr(借方),dr(貸方),確實以:a欄b欄及d欄為判讀要件
已更正對照內容了

0731.zip (22.67 KB)

希望支持!

TOP

回復 7# s7659109
你給錯條件了,你再看清楚一點。。。
表達不清、題意不明確、沒附檔案格式、沒有討論問題的態度~~~~~~以上愛莫能助。

TOP

函數測試仍error
希望支持!

TOP

        靜思自在 : 唯其尊重自己的人,才更勇於縮小自己。
返回列表 上一主題