要查看 Excel 应用程序中已打开的 Excel 文件的完整路径(全路径),你可以通过以下几种方法获取具体路径,尤其是在 VSTO 应用程序中。
方法1:使用 VSTO Excel 外接程序代码
在 VSTO 外接程序代码中,您可以直接访问当前工作簿的 FullName 属性。该属性会返回已打开工作簿的完整路径。
csharp
// Assuming 'excelApp' is your Excel application instance
foreach (Excel.Workbook wb in excelApp.Workbooks)
{
string workbookPath = wb.FullName;
MessageBox.Show("文件全路径: " + workbookPath);
}
-
wb.FullName 返回工作簿的完整文件路径。
-
使用 MessageBox.Show() 方法在弹窗中显示路径,也可以将其输出到日志或者保存为调试信息。
方法2:使用 VBA 宏代码获取全路径
如果你只是在使用 Excel 而不涉及 VSTO 外接程序,也可以使用 Excel 自带的 VBA 宏获取当前打开的 Excel 文件的完整路径。
vba
Sub ShowWorkbookFullPath()
Dim wb As Workbook
For Each wb In Application.Workbooks
MsgBox "文件全路径: " & wb.FullName
Next wb
End Sub
运行此宏将弹出消息框,显示每个已打开工作簿的完整路径。
方法3:通过任务管理器查看 Excel 进程命令行(带文件路径)
通过 Windows 任务管理器,您可以查看 Excel 进程的命令行参数,这其中包含打开的 Excel 文件的完整路径。具体步骤如下:
- 任务管理器查看进程:
-
打开任务管理器 (Ctrl + Shift + Esc)。
-
点击"详细信息"选项卡,找到 EXCEL.EXE 进程。
-
右键点击 EXCEL.EXE,选择"打开文件位置"或"属性",可以看到相关路径。
2. 使用 PowerShell 命令查看文件路径:
如果你有多个 Excel 文件正在打开,并且想通过命令行查看每个 Excel 进程具体打开的文件路径,可以使用 PowerShell 脚本:
powershell
Get-WmiObject Win32_Process | Where-Object { $_.Name -eq "EXCEL.EXE" } | Select-Object CommandLine
这个命令会输出所有正在运行的 Excel 进程的详细信息,其中包括文件的完整路径。
方法4:使用 Process Explorer 工具
你还可以使用 Microsoft 的 Process Explorer 工具,它比任务管理器提供更详细的进程信息,包括显示每个进程的启动参数(包含文件路径)。
-
下载并运行 [Process Explorer](https://docs.microsoft.com/en-us/sysinternals/downloads/process-explorer)。
-
找到 EXCEL.EXE 进程。
-
双击该进程,查看"命令行"选项,你可以在其中看到 Excel 打开的文件的完整路径。
通过这些方法,你可以查看所有当前打开的 Excel 文件的完整路径。