定义一个excel VBA function 先弹出提示框请选择文件然后选择读取一个excel打开这个文件返回它的名字在B1位置
下面是一个示例的Excel VBA函数,它会弹出一个文件选择对话框,让用户选择一个Excel文件,然后将选择的文件名写入B1单元格中:
Function SelectAndOpenExcelFile() As String
Dim filePath As Variant
Dim wb As Workbook
' 弹出文件选择对话框
filePath = Application.GetOpenFilename("Excel 文件 (*.xlsx; *.xls), *.xlsx; *.xls", , "请选择文件")
' 检查用户是否选择了一个文件
If filePath <> False Then
' 打开选择的文件
Set wb = Workbooks.Open(filePath)
' 将文件名写入B1单元格
ThisWorkbook.Sheets("Sheet1").Range("B1").Value = wb.Name
' 关闭打开的文件(可根据需要修改是否关闭)
' wb.Close SaveChanges:=False
' 返回文件名
SelectAndOpenExcelFile = wb.Name
Else
' 用户未选择文件,返回空字符串
SelectAndOpenExcelFile = ""
End If
End Function
使用这个函数的方法如下:
- 在Excel中按下
Alt + F11打开VBA编辑器。 - 在VBA编辑器中,通过
Insert菜单插入一个新的模块。 - 将以上代码复制粘贴到新模块中。
- 关闭VBA编辑器。
- 在Excel的任意单元格中输入
=SelectAndOpenExcelFile(),然后按下Enter键执行函数。 - 弹出文件选择对话框,选择一个Excel文件,然后点击“确定”按钮。
- 函数将打开选择的文件,并将其文件名写入B1单元格中。
请注意,这只是一个简单的示例函数,仅供参考。您可以根据自己的需求进行修改和扩展
原文地址: http://www.cveoy.top/t/topic/iXSe 著作权归作者所有。请勿转载和采集!