Board logo

標題: [發問] 搜尋指定字串並以其他文字取代 [打印本頁]

作者: marklos    時間: 2012-1-3 19:32     標題: 搜尋指定字串並以其他文字取代

請問是否可以搜尋指定字串並以其他文字取代~~

在 A 工作表 填入搜尋字串 以及 欲取代字串 去修改 B 工作表內的資料
[attach]9031[/attach]

B 工作表 修改前
[attach]9032[/attach]

B 工作表 修改後
[attach]9033[/attach]

附件
[attach]9034[/attach]

感謝~~
作者: register313    時間: 2012-1-3 19:43

回復 1# marklos

1.輔助欄
  I1=SUBSTITUTE(E1,A!$B$2,A!$B$4)
2.VBA
作者: marklos    時間: 2012-1-3 21:37

能否仔細說明~~感謝!
作者: register313    時間: 2012-1-3 22:45

回復 3# marklos

1.輔助欄
  I1=SUBSTITUTE(E1,A!$B$2,A!$B$4)  往下複製
你已經在E欄輸入數值(搜尋字串)   所以不可能同時在E欄輸入公式來獲得取代字串
故另在I欄建立 公式來獲得取代字串

2.VBA
直接把E欄的搜尋字串用取代字串來取代
  1. Sub aa()
  2.   For A = 1 To Sheet2.Range("E65535").End(xlUp).Row
  3.     Cells(A, 5) = WorksheetFunction.Substitute(Cells(A, 5), Sheet1.[B2], Sheet1.[B4])
  4.   Next
  5. End Sub
複製代碼

作者: marklos    時間: 2012-1-4 20:04

請問為甚麼只能使用一次 , 再次修改卻無法使用?
作者: register313    時間: 2012-1-4 20:07

回復 5# marklos


    不會吧
   附上檔案才能真正知道問題
作者: marklos    時間: 2012-1-6 13:58

原本的問題已解決~~
但是如果不是只有"E"欄要取代 , 而是等個"B"工作表, 只要符合資料者就要用新資料取代 , 那要如何修改?
謝謝!!!
作者: register313    時間: 2012-1-6 14:38

本帖最後由 register313 於 2012-1-6 14:40 編輯

回復 7# marklos
  1. Sub aa()
  2.   For Each a In Sheet2.UsedRange
  3.      a.Value = WorksheetFunction.Substitute(a, Sheet1.[B2], Sheet1.[B4])
  4.   Next
  5. End Sub
複製代碼
[attach]9098[/attach]
作者: marklos    時間: 2012-1-9 12:01

請幫忙在確認一下...
需要完全符合資料者才要用新資料取代~~
如附件例子 , 要將B工作表中所有完全符合"10"的字串都置換成"9999"
因為原本的巨集指令會將G欄位的"10010"也修改為"999909999"
感謝!
作者: GBKEE    時間: 2012-1-9 12:16

回復 9# marklos
  1. Sub Ex()
  2.   Sheets("B").Cells.Replace Sheets("A").[B2], Sheets("A").[B4], xlWhole
  3. End Sub
複製代碼

作者: marklos    時間: 2012-1-9 19:43

感謝版主的幫忙~~問題解決了!!!
作者: marklos    時間: 2012-1-16 07:44

回復 10# GBKEE

    遲來的感謝~~
    感謝版主的幫忙~~問題解決了!!!




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