我正在使用以下代码来查找和替换Sheet1中存在的单词列表(对于FIND单词的ColA和对于REPLACE单词的ColB,在Sheet2的A:H范围内)。它执行工作但速度很慢。可以修改此脚本以更快地运行吗?
{{1}}
感谢对此问题的任何帮助。
答案 0 :(得分:2)
你能否通过一个带有if语句的数组而不是“查找/替换”函数来完成整个工作?
例如,如果arr1是一个二维数组,其中您的查找值在arr1(i,1)中,并且替换在arr1(i,2)中,您可以通过比较您范围内的值来快速循环arr2的范围。
sub replacement()
dim arr1(), arr2() as variant
dim i,j,k,m as long
arr1=Range("A2:B")
arr2=Range("...") 'the values you want to compare and replace
for i=1 to num 'dimension of the 1st array
for j=1 to num2 'dimension of 2nd array
for k=1 to num3 '2nd dimension of arr2
if arr2(j,k)=arr1(i,1) then
arr2(j,k)=arr1(i,2)
next
next
next
然后将数组发布到你想要的最后范围。