返回列表 上一主題 發帖

[發問] 請問如何可統計出現次數並且包含多條件的資料刪除呢?

回復 16# 准提部林

大大 不好意思
又遇到難題了......
底下為各類別的單一品項達20以上即刪除,且單位代號為A的則刪除部分欄位資料
貼紙條件=20
xR(1, 10)=單位代號

目前的難題是...達20以上的數量計算不包含 單位代號不為A
不為A的單位則統一計算
有試著做修改但這樣因為單位代號滿多
  T = xR(1, 5) & xR(1, 6)  改為↓
  T = xR(1, 5) & xR(1, 6) & xR(1, 10)
  1. Sub 條件刪除()
  2. Dim arr, U%
  3. Dim xArea As Range, xR As Range, xU As Range, xD, T$, I&

  4. 'For i = 1 To 28 Step 9
  5. For I = 1 To Cells(1, Columns.Count).End(xlToLeft).Column Step 10
  6. '自動偵測欄位數 以9欄為一組
  7.     Set xD = CreateObject("Scripting.Dictionary")
  8.     Set xArea = Range(Cells(2, I), Cells(Rows.Count, I).End(xlUp))
  9.     For Each xR In xArea
  10.         T = xR(1, 5) & xR(1, 6): xD(T) = xD(T) + 1
  11.     Next
  12. '檢查符合刪除條件者,納入 xU 儲存格聯集
  13.     Set xU = Cells(xArea.Rows.Count + 2, 1)
  14.     For Each xR In xArea
  15.         T = xR(1, 5) & xR(1, 6)
  16.         If xD(T) >= [貼紙條件] And xR(1, 8) = "." And xR(1, 10) = "A" Then Set xU = Union(xU, xR.Resize(1, 3))
  17.     Next
  18. '刪除
  19.    If xU.Count > 1 Then xU = ""  'xU.Delete Shift:=xlUp
  20.     'If xU.Count > 1 Then xU.Delete Shift:=xlUp
  21. Next I
  22.    
  23. End Sub
複製代碼

TOP

回復 17# starry1314


    目前的解決方式:將單位代號不屬於A的編號 改為統一的編號再來做運算

TOP

回復 20# 准提部林


    感謝版大....我想的好複雜....

TOP

        靜思自在 : 【行善要及時】行善要及時,功德要持續。如燒開水一般,未燒開之前千萬不要停熄火候,否則重來就太費事了。
返回列表 上一主題