按規(guī)則的批量替換

2022-06-28 12:03

4個回答
這個估計要采用VBA編程來循環(huán)所有單元格按指定的規(guī)則對一個一個的單元格一次性替換完成,如果用一般的替換,會造成重復(fù)替換,得不到預(yù)期的結(jié)果的。
思路:讀取一個單元格中的字符串,然后判斷該字符串的長度,然后將該字符串中一個一個的字符分離出來,然后對字符進(jìn)行判斷,按照指定的規(guī)則進(jìn)行替換,完畢后,將該新的字符組合得到替換后的新字符串再來賦值給該單元格,如此反復(fù)處理每一個單元格即可。
單擊工具-宏,新建一個宏名,單擊創(chuàng)建,然后復(fù)制如下代碼并自己修改一下即可:
Dim str As String
For c = 1 To n 'n指代的是該表中該類數(shù)據(jù)所在列的最大列數(shù),自己按實際情況修改,默認(rèn)從第1列開始
For r = 1 To m 'm指代的是該表中該類數(shù)據(jù)所在行的最大行數(shù),自己按實際情況修改,默認(rèn)從第1行開始
nstr = Len(Cells(r, c).Text)
For i = 1 To nstr
strtmp = Mid(Cells(r, c).Text, 1, 1)
Select Case strtmp
Case "a"
strtmp = "b"
Case "b"
strtmp = "n"
Case "c"
strtmp = "v"
Case "g"
strtmp = "z"
Case "r"
strtmp = "o"
Case "h"
strtmp = "s"

'在這里把你的替換規(guī)則按上面的形式補充完整
End Select
str = str + strtmp
Next i
Cells(r, c).Value = str
str = ""
strtmp = ""
Next r
Next c
普通查找替換為什么不行? 把換的順序換一下不就行了?
先換a再換b有此重復(fù)替換問題,可以先換b再換a嘛,實在是有交替換的情況還可以先臨時把一個換成一個替換區(qū)域不存在的字符,最后再把它換正常。
從后面開始換
方法很多的//樓上說的也對
給你說個最簡單的且不會錯的原理[手動也行,最好錄制個宏]。[因為不確定你26個字母都用,所以就當(dāng)你26個字母都用吧,用100個不同字母都行]
1首先需要分列。保證每個字母在一個單元格內(nèi)
2把26個字母對應(yīng)到數(shù)字1-26
先替換成目標(biāo)字母對應(yīng)的數(shù)字
再全部替換回字母
最后再合并一起//

中間的替換步驟還是錄個宏吧。會省點時間。
相關(guān)問答
excel 能建立替換的規(guī)則批量替換么?
1個回答2022-07-30 19:11
B表的B1單元格輸入 =INDEX(A表!A:A,MATCH(A1,A表!B:B,0)) 下拉填充就可以了
EXCEL批量多對一替換
1個回答2022-09-16 22:37
替換功能提供一次多個替換,比如把整篇文字中的所有相同文字替換成另一個固定文字,僅限于相同的替換,而不同的文字不可能一次全部替換
EXCEL批量修改單元格內(nèi)容。按一定條件進(jìn)行批量替換
2個回答2022-09-14 08:25
你可以把原來的公式貼出來 我們來做 微調(diào)就行了。做個替換的宏也蠻方便的。
excel中怎么批量替換公式
2個回答2022-09-22 05:45
公式中的內(nèi)容也可以直接進(jìn)行替換處理。 你公式中都是將s4:s4改為"s4:s",因而可使用替換方式解決問題。 CTRL+H——查找內(nèi)容輸入s4:s4——替換為輸入"s4:s"——全部替換。
網(wǎng)頁文本如何批量替換?
2個回答2022-12-28 14:44
可以做一個 都是文本域,先獲取所有文本域里面的文字,然后根據(jù)你輸入的字替換,替換后再賦值回去,這個組件還是需要花些時間的
EXCEL 如何批量替換多個數(shù)值?
2個回答2022-09-15 04:24
substitute函數(shù)可以實現(xiàn),以A1單元格為例 公式為: =substitute(substitute(substitute(substitute(substitute(A1,"訂","")...
全文
Excel如何批量替換數(shù)據(jù)?
4個回答2022-07-30 16:50
1、全選 2、按CTRL+H(查找替換快捷鍵) 3、查找框中輸入需替換的數(shù)據(jù)--替換框中輸入想替換為的數(shù)據(jù)--全部替換就行。
如何按編號批量重命名!
2個回答2022-10-24 14:04
安裝ACDSee可以做到! 打開ACDSee后選擇你要修改的文件夾,然后選中所有文件,右鍵,重命名,第一個欄如你的排序00001就需要輸入5個#,第二個欄空白即可!
怎么批量查找和替換網(wǎng)頁中的內(nèi)容
2個回答2023-04-15 22:20
方法:編輯——查找/替換,打開“查找/替換”對話框。 “查找范圍”選擇“整個當(dāng)前本地站點” “搜索”中選擇“文本”(如果我沒有猜錯的話,你是想批量修改文字內(nèi)容,如果不是也可以選擇其它:源代碼、指定標(biāo)簽...
全文
如何批量替換部分文件名
1個回答2023-01-20 22:09
用Replace Pioneer的文件名批量替換功能即可,詳細(xì)步驟: 1. 打開Tools->Batch Runner菜單 2. 把多個待處理文件拖拽到Batch Runner窗口中 3. 把set ...
全文
熱門問答