关于Excel宏的小窍门图文攻略教程( 二 )


Excel还支持多种搜索替换功能 。 假如我们需要将TelNum这个栏里面的电话号码的0191部分都替换成0307 , 我们只需在旁边空列的单元格中键入“=IF(LEFT(telnum,4)=“0191”,SUBSTITUE(telnum“0191”,“0307”),“ ”)” 。
点击单元格 , 向下拖拽这个单元格的右下角将公式向下复制 。 这样只要旁边的列中包含0191这个字符串 , 在新的这一列中就会将它改为0307并显示出来 , 同时将原来那个单元格清空 。
如果你的字符串中多次出现某个子字符串 , 你还可以为SUBSTITUE函数指定替换其中的哪一个子字符串 。 我们举个例子 , 假如A2此时显示“中国北京2000” , 在B2中键入“=SUBSTITUE(A2,“0”,“8”,3)” 。
【关于Excel宏的小窍门图文攻略教程】 这样B2中将会显示“中国北京2008” 。 这个例子同第一个例子大部分均相同 , 唯一不同在于后面第四个参数“3” 。 我们这里正是用这个参数来指示要替换第几个重复出现的字符 。
在Excel中还提供了一个类似的REPLACE函数 。 这里举两个例子帮助大家熟悉它 。
首先假设我们在A2中键入了一串信用卡号码:5123 4567 8901 2345 。 我们想在B2中显示这串号码 , 但为了安全起见需要将最后四位以*替换掉 。 这时就可以用REPLACE函数就可以派上用场 。 只需要在B2中键入“=REPLACE(A2,12,4,“****”)” , B2中便会显示“512345678901****” 。 在此处 , 函数中的第二个参数给出了字符替换起始位 , 第三个参数给定替换个数 , 最后那个参数给出替换的内容 。 如果你希望遮挡的不是后四位而是前四位 , 可以在B2中填入“=REPLACE(A2,1,12,“**** **** ****”)” , B2将显示“**** **** **** 2345” 。
如果你只想提取字符串中的某几位 , 还可以利用上下面几个函数 。 这里举几个例子 , 帮你熟悉它们 。 假设A2里面显示的是London W1T7RJ 。 如果你在B2中键入“=LEFT(A2,6)” , 单元格将显示城市名;如果在C2中键入“=RIGHT(A2,7)” , 单元格内将会显示后面的邮编 。
如果你从网上粘贴下来的字符串内碰巧出现了几个多余的空格 。 你可以用TRIM函数将这些多出来的空格去掉 。 假设A2中放的就是这样一个字符串 , 在B2中键入“TRIM(A2)”便可得到修改好的字符串书写的代价 。

推荐阅读