之前写过一个自动导入PDF文件并在CorelDRAW中简单排版后打印的小程序,PDF文件的地址是用的绝对路径,换文件打印的时候就有点不太方便,于是就想改成当前文件所在路径 & 文件名
这样的形式,这样后续打印时只需要修改一下需要打印的文件名称就可以了:
方法1:使用ActiveDocument属性
Sub GetCurrentFilePath()
Dim filePath As String
' 检查是否有文档打开
If ActiveDocument Is Nothing Then
MsgBox "没有打开的文档!", vbExclamation
Exit Sub
End If
' 获取文件路径
filePath = ActiveDocument.FilePath
' 显示路径
MsgBox "当前文件路径: " & filePath, vbInformation
End Sub
方法2:使用FullFileName属性(包含文件名)
Sub GetCurrentFileFullPath()
Dim fullPath As String
If ActiveDocument Is Nothing Then
MsgBox "没有打开的文档!", vbExclamation
Exit Sub
End If
fullPath = ActiveDocument.FullFileName
MsgBox "当前文件完整路径: " & fullPath, vbInformation
End Sub
如果文档尚未保存(新文档),FilePath和FullFileName属性可能返回空字符串或引发错误,建议在使用前始终检查ActiveDocument是否为Nothing,FullFileName属性返回完整路径(包括文件名),而FilePath只返回路径部分。
包含错误处理的示例
Sub GetDocumentPathSafely()
On Error Resume Next
Dim doc As Document
Set doc = ActiveDocument
If doc Is Nothing Then
MsgBox "没有打开的文档!", vbExclamation
Exit Sub
End If
Dim path As String
path = doc.FilePath
If path = "" Then
MsgBox "文档尚未保存,没有路径信息。", vbInformation
Else
MsgBox "文档路径: " & path, vbInformation
End If
End Sub