我有一个包含2列的Excel工作表:绝对路径和相对路径 现在说数据格式如下:
absolute path relative path
------------- -------------
/a/b/c/d/abc.dat
/x/y/z/def.dat
/p/q/r/s/t/test.dat
/a/b/c/d/abc.dat
/x/y/z/def.dat
输出应为
absolute path relative path
------------- -------------
/a/b/c/d/abc.dat ABCD_PATH
/x/y/z/def.dat XYZ_PATH
/p/q/r/s/t/test.dat PQRST_PATH
/a/b/c/d/abc.dat ABCD_PATH
/x/y/z/def.dat XYZ_PATH
如果第一列包含/a/b/c/d
,则在第二列中应放置一些我在此处为ABCD_PATH
的唯一字符串。
如果第一列包含/x/y/z/
,则在第二列中应放置一些我在此处为XYZ_PATH
的唯一字符串。
如果第一列包含/p/q/r/s/t/
,则在第二列中应放置一些我在此处为PQRST_PATH
的唯一字符串。
答案 0 :(得分:3)
在Excel文件的工作表中创建映射表(例如sheet2):
______________________________________
| | A | B
|___|____________|_____________________
| 1 | Absolute | ReplaceBy
| |------------|---------------------
| 2 |/a/b/c/d/ | ABCD_PATH
| 3 |/x/y/z/ | XYZ_PATH
| 4 |/p/q/r/s/t/ | PQRST_PATH
|
|_________ ___________________
\ sheet1 /\ sheet2 /\ sheet3 /
\______/ \______/ \______/
返回sheet1:
___________________________________________________
| | A | B
|___|____________________|__________________________
| 1 | absolute path | relative path
| |--------------------|--------------------------
| 2 |/a/b/c/d/abc.dat | =VLOOKUP(LEFT(A2... --(hit)-> Ctrl+Shift+Enter
| 3 |/x/y/z/def.dat | |
| 4 |/p/q/r/s/t/test.dat | V (copy cell)
|
| __________________________________________
\ sheet1 /\ sheet2 /\ sheet3 /
\______/ \______/ \______/
将relative path
B2
单元格放入此公式:
=VLOOKUP(LEFT(A2,
MAX((MID(A2, ROW($1:$90), 1)="/")*ROW($1:$90))
),
Sheet2!$A$2:$B$4,
2,
FALSE)
按 Ctrl + Shift + 输入:这是一个数组公式,也称为CSE formula。< / p>
复制B2
单元格(不是公式)并将其粘贴到列B
中的其余单元格中。
答案 1 :(得分:0)
怎么样
=TRIM(SUBSTITUTE(UPPER(LEFT(A1,FIND("~",SUBSTITUTE(A1,"/","~",LEN(A1)-LEN(SUBSTITUTE(A1,"/","")))))),"/",""))&"_PATH"
路径
和=RIGHT(A1,LEN(A1)-FIND("~",SUBSTITUTE(A1,"/","~",LEN(A1)-LEN(SUBSTITUTE(A1,"/","")))))