Sub MultiFindNReplace()
'Update 20140722
Dim Rng As Range
Dim InputRng As Range, ReplaceRng As Range
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Original Range ", xTitleId, InputRng.Address, Type:=8)
Set ReplaceRng = Application.InputBox("Replace Range :", xTitleId, Type:=8)
Application.ScreenUpdating = False
For Each Rng In ReplaceRng.Columns(1).Cells
InputRng.Replace what:=Rng.Value, replacement:=Rng.Offset(0, 1).Value
Next
Application.ScreenUpdating = True
End Sub
Source:
扩展 Office - 如何在 Excel 中一次查找和替换多个值? https://www.extendoffice.com/documents/excel/1873-excel-find-and-replace-multiple-values-at-once.html
数据类型:使用 Excel Application.InputBox 方法 http://codevba.com/excel/application_inputbox.htm#.W3-RTehKiF5
我尝试更换Type:=8
with Type:=2
用于文本而不是范围,但它不起作用。请帮助我突破 255 个字符的限制。
示例数据:谷歌电子表格 https://docs.google.com/spreadsheets/d/1coaiPGE_ne5XcX0X8HaRT3olUZGkFQs0fKokMBwKh6Q/edit?usp=sharing
我不是 100% 清楚您拥有哪些数据以及您想要做什么,但我认为如果您使用以下内容,您将会取得更大的成功:
- MSDN : Replace功能 (VBA) https://learn.microsoft.com/office/vba/Language/Reference/User-Interface-Help/replace-function
...代替:
- 办公室支持:Range.Replace Method (Excel) https://learn.microsoft.com/office/vba/api/Excel.Range.Replace
第二个基本上是一个工作表函数,因此受到第一个函数没有的各种限制。
您的代码应该只需要进行微小的更改即可适应Replace
功能。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)