如何获取目录路径的一部分

如何获取目录路径的一部分

我有一条可以通过的路径=INFO("Directory")(例如“C:\Users\username\Documents\”),我想提取位于第二和第三斜杠之间的用户名,它可以是任意长度的单词,所以我想要一个提取它的通用公式。

答案1

以下公式将从单元格 A1 中的目录路径中提取用户名,该目录路径是用户目录 (C:\Users\username) 或其子目录。

=MID(A1,FIND("\",A1,4)+1,FIND("\",A1,FIND("\",A1,4)+1)-FIND("\",A1,4)-1)

该公式通过从第 4 个位置开始搜索来找到第二个“\”(因为第一个“\”通常位于第 3 个位置)。

请记住,工作簿可能位于不属于用户目录的目录中(例如,它可能位于“D:\Docs”中)。

如果您只是想获取当前用户的名称,您可以在 VBA 中使用 来实现Environ$("UserName")。例如,创建一个用户定义函数,如下所示(来自https://stackoverflow.com/a/6934266/4424957

Public Function UserName()
    UserName = Environ$("UserName")
End Function

相关内容