如何在Excel中交换单元格内的内容
我有一个excel列1000 +url列表,我想通过交换位置的参数编辑结构
例如:
原始结构
Www.example.com/test.htm?name=John&age=21&city=London&unique_id=1425&dept=cs
在这里,我希望参数“unique_id”放在“age”参数之前。
预期的结构
Www.example.com/test.htm?name=John&unique_I'd=1425&age=21&city=London&dept=cs
有没有一个公式或方法,我可以在该列上运行
你可以用下面的公式来做…但是它有一些古怪的行为取决于你的url的可变性:
=SUBSTITUTE(SUBSTITUTE(A1,"&age=",MID(A1,FIND("&unique_id=",A1),FIND("&",A1&"&",FIND("&unique_id=",A1)+1)-FIND("&unique_id=",A1))&"&age="),MID(A1,FIND("&unique_id=",A1),FIND("&",A1&"&",FIND("&unique_id=",A1)+1)-FIND("&unique_id=",A1)),"",2)
所以核心是:
-
MID(A1,FIND("&unique_id=",A1),FIND("&",A1&"&",FIND("&unique_id=",A1)+1)-FIND("&unique_id=",A1))
&unique_id=xxxxx
string - 然后,我们使用unique_idstringreplace现有
&age=
string,并将&age=
卡住 - 然后,我们删除第二个出现的
&unique_id=xxxxx
string,用""
替代 – 所以如果我们已经在url中引入了unique_id,我们将删除原来的
这样做与VBA会更强大 – 但它似乎是一个很好的公式挑战:-)