当我使用此公式时:=LEFT(CELL("filename"),FIND("[",CELL("filename"),1)-1)
要检索打开的工作簿的文件位置,它总是给我一些像
C:\ Folder1 \ Folder2 \ Folder3
实际上,我想要
\\ ausp-FIL \ Folder1中\ FOLDER2 \ Folder3。
ausp-fil被映射到C:驱动器上,这就是它出现的原因,但是有没有办法让公式检索带有服务器名称的文件位置?我可能已将ausp-fil映射到C:但我确定其他人没有。
答案 0 :(得分:0)
我怀疑你只能使用公式来实现它,但是你可以使用这个VBA函数将映射的驱动器号转换为它的UNC路径。 VBA函数可以用于公式。
Function GETNETWORKPATH(ByVal DriveName As String) As String
Dim objNtWork As Object
Dim objDrives As Object
Dim lngLoop As Long
Set objNtWork = CreateObject("WScript.Network")
Set objDrives = objNtWork.enumnetworkdrives
For lngLoop = 0 To objDrives.Count - 1 Step 2
If UCase(objDrives.Item(lngLoop)) = UCase(DriveName) Then
GETNETWORKPATH = objDrives.Item(lngLoop + 1)
Exit For
End If
Next
End Function
Sub kTest()
MsgBox GETNETWORKPATH("P:")
End Sub