我现在有路径
C:AAA\BBB\CCC1\DDD\EEE\FFF.xlsx
C:AAA\BBB\CCC2\DDD\EEE\FFF.xlsx
我现在想取得的路径是
CCC1\DDD\EEE\FFF.xlsx
CCC2\DDD\EEE\FFF.xlsx
并且把CCC1\DDD\EEE\FFF.xlsx 和 CCC2\DDD\EEE\FFF.xlsx放到excel单元格里
怎么放单元格里我会。
主要是vba如何判断并取得CCC后面的相对路径
你要获取的相对路径,总有一个相对的东西,下面的代码假设相对本文件路径来写的:
p1="C:AAA\BBB\CCC1\DDD\EEE\FFF.xlsx"p2=ThisWorkBook.Path
p3=""
if left(p1,len(p2))=p1 then
p3=right(p1,len(p1)-len(p2))
'如果路径p1的前面部分与p2完全一致,相对路径为后面部分
else
p3=p1
'否则,相对路径就是绝对路径
end if
msgbox "相对路径:" & p3
温馨提示:答案为网友推荐,仅供参考
第1个回答 2018-11-28
用instr查找第二个\出现的位置,之后就可以配合mid截取出你们的内容,当然复杂点你也可以用正则表达式。
第2个回答 2018-11-28
按斜杠分列,然后逐一合并直到不一样的就是相对路径的开始点。