Board logo

標題: [發問] 如何刪除字串內指定文字或是保留指定文字? [打印本頁]

作者: marklos    時間: 2011-12-30 18:04     標題: 如何刪除字串內指定文字或是保留指定文字?

請問~~
如何刪除字串內指定文字包含後面的數字或是保留指定文字包含後面的數字?

刪除Location E2;E3;E4 欄位內字串指定文字C開頭的編號
或是保留P開頭的文字

並修正D2;D3;D4 的數量

變更前
[attach]8964[/attach]

變更後
[attach]8965[/attach]
作者: Hsieh    時間: 2011-12-30 18:36

  1. Sub 刪除C()
  2. Dim Ay()
  3. For Each a In Range("E2:E4")
  4. ar = Split(a, ",")
  5. For Each c In ar
  6.   If Not c Like "C*" Then
  7.     ReDim Preserve Ay(s)
  8.     Ay(s) = c
  9.     s = s + 1
  10.   End If
  11. Next
  12. a.Value = Join(Ay, ",")
  13. Erase Ay: s = 0
  14. Next
  15. End Sub

  16. Sub 保留P()
  17. Dim Ay()
  18. For Each a In Range("E2:E4")
  19. ar = Split(a, ",")
  20. For Each c In ar
  21.   If c Like "P*" Then
  22.     ReDim Preserve Ay(s)
  23.     Ay(s) = c
  24.     s = s + 1
  25.   End If
  26. Next
  27. a.Value = Join(Ay, ",")
  28. Erase Ay: s = 0
  29. Next
  30. End Sub
複製代碼
回復 1# marklos
作者: marklos    時間: 2011-12-30 23:29

感謝相助~~
但是還有一事不明~
也就是 , 當保留pXX之後 , 如何重新統計數量 (D欄內每個ITEM的數量)
作者: Hsieh    時間: 2011-12-30 23:54

回復 3# marklos
  1. Sub 保留P()
  2. Dim Ay()
  3. For Each a In Range("E2:E4")
  4. ar = Split(a, ",")
  5. For Each c In ar
  6.   If c Like "P*" Then
  7.     ReDim Preserve Ay(s)
  8.     Ay(s) = c
  9.     s = s + 1
  10.   End If
  11. Next
  12. a.Value = Join(Ay, ",")
  13. a.Offset(, -1) = s
  14. Erase Ay: s = 0
  15. Next
  16. End Sub
複製代碼

作者: marklos    時間: 2012-1-1 21:37

感謝您幫了個大忙~~感謝!!!
作者: marklos    時間: 2012-1-16 07:47

回復 4# Hsieh


    原本要點選另外一個"回復"才能讓您收到感謝的聲音~~
~~遲來的感謝~~感謝版主的幫忙~~問題解決了!!!




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)