VBA取得相对路径的问题

我现在有路径
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
按斜杠分列,然后逐一合并直到不一样的就是相对路径的开始点。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网