MICROSOFT

EP01. “Path and FullName Path 和 FullName 属性”

首页 Microsoft 工具 Excel · VBA · Workbook and Worksheet Object · EP01
约 4 分钟· #EP01#Excel#Workbook and Worksheet Object
🔒 登录后可标记已读
  • 写 VBA 处理多个文件时,经常要知道"这份文件存在哪里"
  • 这篇教你 PathFullName 两个属性的差别
  • Path 只给资料夹路径,FullName 连文件名一起给
  • 前置知识是知道怎么打开 VBA 编辑器
  • 学完能在代码里动态取得当前工作簿的位置信息

重点内容


适用版本

桌面版通用(Excel 365 / 2021 / 2019 等)。


事前准备

下载范例文件 path-fullname.xlsm,保存到 C:\test\ 文件夹,并在工作表上放一个命令按钮。


Path 属性

Sub Show_Path()
    MsgBox Workbooks("path-fullname.xlsm").Path
End Sub

Path 属性只返回工作簿保存的完整路径(不含文件名本身),比如 C:\test


FullName 属性

Sub Show_FullName()
    MsgBox ActiveWorkbook.FullName
End Sub

FullName 属性返回完整路径 + 文件名,比如 C:\test\path-fullname.xlsm


代码怎么运行

  1. Alt + F11 打开 VBA 编辑器,Insert → Module,贴入代码
  2. 回到工作表放命令按钮,分别绑定两个 Sub
  3. 点击按钮,观察弹出的路径信息差异

[截图:分别点击两个按钮后弹出的 MsgBox,一个只显示资料夹路径,一个显示路径加文件名的差异]


小技巧 💡

FullName 常用在"打印前自动加页脚显示文件位置"这类场景,把 ActiveWorkbook.FullName 塞进页脚代码里,打印出来的文件就知道自己存在哪。


方法怎么选

属性适合场景备注
Path只需要资料夹路径,比如动态拼出另存路径工作簿还没存过盘时返回空字符串
FullName需要完整路径 + 文件名,比如打印页脚显示文件位置同样,未存盘时也是空字符串

学完你会

  • ✅ 能用 Path 取得工作簿所在的资料夹路径
  • ✅ 能用 FullName 取得完整路径连文件名
  • ✅ 知道工作簿没存盘时两个属性都会返回空字符串,要注意这个坑

常见错误

  • PathFullName 搞混,用 Path 结果却期待拿到包含文件名的完整路径,导致后续用这个路径去拼接文件名时少了一层
  • 工作簿还没保存过(新建但没存盘),Path 会返回空字符串,因为还没有"保存路径"这个东西

Sources

Blog / Website:

  1. Path and FullName