如何使用 vba 获取工作簿名称(附示例)


您可以在 VBA 中使用以下方法来获取 Excel 工作簿的名称:

方法 1:获取活动工作簿名称

 Function GetWorkbookName() As String
GetWorkbookName = ActiveWorkbook.Name
End Function

此函数将返回活动工作簿的名称,例如my_vba_workbook.xlsm

方法 2:获取不带扩展名的活动工作簿名称

 Function GetWorkbookName() As String
GetWorkbookName = Left(ActiveWorkbook.Name, InStr(ActiveWorkbook.Name, " . ") - 1)
End Function

此函数将返回活动工作簿的名称,不带扩展名,例如my_vba_workbook

以下示例展示了如何在实践中对当前活动的 Excel 工作簿(名为my_vba_workbook.xlsm )使用每种方法。

示例 1:获取活动工作簿的名称

我们可以创建以下函数来获取活动工作簿的名称:

 Function GetWorkbookName() As String
GetWorkbookName = ActiveWorkbook.Name
End Function

然后,我们可以在单元格A1中键入以下公式来获取活动工作簿的名称:

 =GetWorkbookName()

以下屏幕截图显示了如何在实践中使用该公式:

我们可以看到该公式返回my_vba_workbook.xlsm ,这是我们正在使用的当前活动工作簿的名称。

注意.xlsm扩展名代表启用宏的 Excel 工作簿。

示例 2:获取不带扩展名的活动工作簿名称

我们可以创建以下函数来获取不带扩展名的活动工作簿的名称:

 Function GetWorkbookName() As String
GetWorkbookName = Left(ActiveWorkbook.Name, InStr(ActiveWorkbook.Name, " . ") - 1)
End Function

然后,我们可以在单元格A1中键入以下公式来获取活动工作簿的名称:

 =GetWorkbookName()

以下屏幕截图显示了如何在实践中使用该公式:

我们可以看到该公式返回my_vba_workbook ,它是当前活动工作簿的名称,不带.xlsm扩展名。

注意:使用LeftInstr函数,我们可以提取工作簿名称中点左侧的所有字符。

其他资源

以下教程说明如何在 VBA 中执行其他常见任务:

如何使用 VBA 创建文件夹
如何使用VBA删除文件夹
如何使用VBA重命名文件
如何使用VBA检查文件是否存在

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注