需求:在今日的工作过程中,发现有大量的内容需要从另外一个表格前两列里匹配进行替换。从编号替换成具体内容,但是有一些地方编号有多个用逗号连接在一起,需要先分隔开来。
解决方案:找了很多方案,但是没有现成的公式能满足这个需求,简单的脚本无法满足,于是找了宏脚本,先录制一个简单的替换文本的宏脚本,然后再这个脚本基础上进行修改,下面是具体的代码,实现的逻辑是从Sheet1里获取到匹配关系,然后到交易风险模型里替换到相应的位置区域,本方法相对实现简单:
function test()
{
tempc="";
for(tempi=200;tempi>=2;tempi=tempi-1)
{
Worksheets("Sheet1").Activate;
tempc=Worksheets("Sheet1").Range("B"+tempi).Text;
tempvar=Worksheets("Sheet1").Range("A"+tempi).Text;
// MsgBox(tempc+" 2 "+tempvar);
if(tempc!="")
{
Worksheets("交易风险模型").Activate;
Worksheets("交易风险模型").Range("H2:L200").Replace(tempc,tempvar , xlPart, xlByRows, false, false, true, true);
}
}
}