×

vba中打开文件中的文件名

vba中打开文件中的文件名(vba打开文件名含有指定字符串的文件)

admin admin 发表于2023-04-02 06:52:09 浏览52 评论0

抢沙发发表评论

本文目录一览:

怎样vba中打开文件并获取文件名

Declare Function GetOpenFileName Lib "comdlg32.dll" Alias _ "GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long Type OPENFILENAME lStructSize As Long hwndOwner As Long hInstance As Long lpstrFilter As String lpstrCustomF...

教你用vba在excel中打开工作薄

步骤

1、首先我们打开一个工作样表作为例子。

2、我们使用alt+f11组合快捷键进入vbe编辑器, 插入一个新的模块,并在模块中输入以下代码:

Sub openWorkbook1()

Workbooks.Open "需打开文件的路径文件名"

End Sub

3、看代码写的很明白了, 比如我要打开桌面上的一个工作薄,那么我们就是输入文件的路径,查找路径的方式是在文件上点击鼠标右键,然后选择属性菜单。标注的位置处即文件的路径。

4、然后使用斜杠分隔文件名。 文件名即图片中指示所在的地方。文件名和文件路径都可以使用鼠标选择并复制粘贴。

5、输入完整的代码

Workbooks.Open "C:UsersjohnDesktop新建 Microsoft Excel 工作表.xlsx"

然后运行,则可以打开这个工作薄。大家注意到括号是不需要的.,直接输入文件路径加名称就可以了。

6、这里需要注意的是, open方法虽然可以打开其他的文件,但是它是属于workbooks这个对象,所以打开文件的方式将会是以excel工作薄的方式打开,所以只能打开excel文件,而不能打开其他格式的文件。-vba中打开文件中的文件名

以上就是在excel表格中使用vba函数打开工作薄方法介绍,操作很简单的,大家学会了吗?希望这篇文章能对大家有所帮助!

VBA中打开一个由变量传递的文件名

"F:\Doc\"这个目录请根据自己的情况修改:

Workbooks.Open

Filename:="F:\Doc\"

FN

".xls"

如果你的单元格中存储的文件名已经有扩展名就直接用:

Workbooks.Open

Filename:="F:\Doc\"

FN

excel vba如何获取所有打开的excel文件名

针对ThisWorkbook对象的BeforeClose事件添加如下代码

Private Sub Workbook_BeforeClose(Cancel As Boolean)

    Dim fileStr As String

    fileStr = "$111.xls$333.xls$“ ‘头尾都用$分隔,循环判断文件名

    For I = Workbooks.count To 1 Step -1

        If InStr(fileStr, Workbooks(I).Name)  0 Then

            Workbooks(I).Close False ‘False是不保存关闭 true是保存并关闭

        End If

    Next

End Sub

关闭时就会遍历所有打开的excel文件,执行不保存操作,并关闭

Excel中VBA提取文件夹名称的方法?

文章介绍excel中使用vba提取文件名的操作步骤。根据需要自行修改vba提取文件名的路径和存放单元格即可。

在excel中使用VBA编写代码,可以轻松的提取某个文件夹下面的所有文件名。

比如笔者在F盘下面建立了一个文件夹,文件夹的名称是:office教程网,现在想将“office教程网”这个文件夹下面的所有文件名提取出来放在当前工作表的C列。

具体的vba提取文件名的操作如下:

1.按下ALT+F11,打开VBE编辑器。

2.执行“插入——模块”,插入模块1。

3.在右边的代码编辑窗口,复制下面的代码,然后单击“绿色箭头”或者快捷键F5键,运行代码。

Private Sub vba提取文件名()

Dim FileName As String

Dim i As Long

FileName = Dir("F:\office教程网\*.*")

i = 0

Range("C:C").ClearContents

Do While FileName ""

i = i + 1

Cells(i, 3) = FileName

FileName = Dir

Loop

End Sub

4.关闭VBE窗口,回到工作表中,可以在C列看到F盘“office教程网”文件夹下面所有的文件名全部罗列在C列了。

关于上面的vba提取文件名的代码,请在实际使用时,根据需要修改提取文件名的路径(F:\office教程网\*.*),以及存放在C列的位置(Cells(i, 3))。

vba读取文件夹中的文件名

提取当前文件夹下的文件名称并放在A列

Sub 按钮1_Click()

Application.ScreenUpdating = False

Set fso = CreateObject("scripting.filesystemobject")

Set ff = fso.getfolder(ThisWorkbook.Path) 'ThisWorkbook.Path是当前代码文件所在路径,路径名可以根据需求修改

ActiveSheet.UsedRange.ClearContents

a = 1

For Each f In ff.Files

Rem 如果不需要提取本代码文件名,可以增加if语句 if f.name thisworkbook.name then.....

Rem 如果值需要提取某类文件,需要对f.name的扩展名进行判断

Rem 个人感觉split取 扩展名:split(f.name,".")(ubound(split(f.name,"."))),然后再判断,避免文件名还有其他“.”

Cells(a, 1) = f.Name '相对路径名

Cells(a, 2) = f '全路径名

a = a + 1

Next f

Application.ScreenUpdating = True

End Sub