返回列表 上一主題 發帖

[發問] 儲存格內相同字串處理_取代

[發問] 儲存格內相同字串處理_取代

如下面連結

http://forum.twbts.com/thread-9000-1-1.html

我學到replace的方法

但是又遇到另一個問題
如附件
新增Microsoft Excel 工作表 (2).rar (1.76 KB)

我如果要取代字串中的Never

但我也會同時取代 Never_1 ...

不知道是否有方法只取代 Never 而不會連Never_1 等類似字串一起取代

回復 13# a703130

mystr = Join(Application.Transpose(Rng), "、")                     
以頓號(、)連結Rng範圍的內容
學海無涯_不恥下問

TOP

回復 11# Hsieh

Sub ex()
Set Rng = Range([C2], [C:C].Find("End", lookat:=xlWhole))    '設定尋找範圍
For Each a In Range([F2], [F2].End(xlDown))                                 '取代的數量
     mystr = Join(Application.Transpose(Rng), "、")                     '???
     a.Offset(, 2) = Replace(mystr, a & " ", a.Offset(, 1) & " ")      
Next
End Sub
   
請問  mystr = Join(Application.Transpose(Rng), "、")  這行的意思是??  "、"用意為何?

TOP

回復 5# a703130
6# Hsieh超版 用的是Replace 函數
也可用 Replace 方法
  1. ption Explicit
  2. Sub Ex()
  3.     Dim Rng As Range, a As Range
  4.     Set Rng = Range([C2], [C:C].Find("End", lookat:=xlWhole))
  5.     For Each a In Range([F2], [F2].End(xlDown))
  6.     ' mystr = Join(Application.Transpose(Rng), "、")
  7.         a.Offset(, 2) = Rng.Replace(a & " ", a.Offset(, 1) & " ", xlPart)
  8.     Next
  9. End Sub
複製代碼

TOP

回復 5# a703130
  1. Sub ex()
  2. Set Rng = Range([C2], [C:C].Find("End", lookat:=xlWhole))
  3. For Each a In Range([F2], [F2].End(xlDown))
  4.      mystr = Join(Application.Transpose(Rng), "、")
  5.      a.Offset(, 2) = Replace(mystr, a & " ", a.Offset(, 1) & " ")
  6. Next
  7. End Sub
複製代碼
學海無涯_不恥下問

TOP

回復 4# Hsieh

謝謝H大~以了解

Microsoft Excel 工作表 (2).rar (1.82 KB)
我現在遇到另一個問題
當我資料變多時,我是使用do loop 遇到"END" 停止處理
而旁邊的儲存格是我取代的關鍵字
這部份也是用do loop 遇到" " 停止處理
取代後的儲存格要存至cells(x,9) ,x 往下增加
但是最後會變成只取代1_Never_

尋找的字串      待取代的字串
Never                             Test
Never_1                     apple
1_Never_                     Gone

是否有辦法解決??

TOP

回復 3# a703130

附件中的Never後面有一個空格,可以跟Never_做識別
所以只有此方法做2者區別
學海無涯_不恥下問

TOP

回復 2# Hsieh

你的意思是

單一 Never 字串都在後面加上空白辨識嗎??

TOP

回復 1# a703130
Never加上一個空白鍵作為搜尋目標
要取代的字串也加上空白鍵
學海無涯_不恥下問

TOP

回復 3# Hsieh

請問是否能用replace 方式直接替換?

TOP

        靜思自在 : 真正的愛心,是照顧好自己的這顆心。
返回列表 上一主題