找项目网找项目网  2023-05-10 14:13 找项目网 隐藏边栏
导语: 日常工作中经常会整理文件到指定的文件夹,少的时候用鼠标拖拖,多了就很麻烦了,这种枯燥的重复性工作可以交给电脑批量处理,现在就分享一个方法。第四步:点击这个控件就可以运行代码,代码会让你选择一个文件夹,就选择上面那个放了很多需要整理归类文件所在的文件夹。然后在目标文件夹这里写入1,表明把这些名称为1的各类型文件放入到文件夹1里去。accdb这个文件放入到1这个文件夹里)

日常工作中经常会整理文件到指定的文件夹,少的时候用鼠标拖拖,多了就很麻烦了,这种枯燥的重复性工作可以交给电脑批量处理,现在就分享一个方法。

如下图所示,在这个文件夹中,有各种类型的文件,我想把所有名称为1的文件,无论是什么类型,统一放到文件夹1里,把所有名称是2的文件放到文件夹2里,以此类推,一共有1-5个文件夹。

excel 打开vba_vba打开指定excel文件_vba打开指定workbooks

第一步:首先新增一个excel工作簿,打开后,鼠标放在工作表名上,点击鼠标右键,查看代码,会进入VBA的编辑界面。

第二步:把代码粘贴进去。(复制下面的代码,从sub test()一直复制到End Sub)

Sub test()

Dim ss$, n%, fd, t$

Range("a2:d60000").Clear '先清空

Set fd = Application.FileDialog(msoFileDialogFolderPicker) '运行用户选择一个文件夹

If fd.Show = -1 Then

t = fd.SelectedItems(1) '记录这个文件夹名称

Else

Exit Sub '否则就退出程序

End If

[a1] = "命令"

[b1] = "文件名称"

[c1] = "目标文件夹"

ss = Dir(t & "")

Do

n = n + 1

Cells(n + 1, 1) = "move"

Cells(n + 1, 2) = ss

ss = Dir

Loop Until ss = ""

With Sheet1

.Cells.HorizontalAlignment = xlCenter

.[a1].CurrentRegion.Borders.Weight = xlThin

.Cells.EntireColumn.AutoFit '调整宽

End With

MsgBox "快学Excel提示您,查询完毕"

End Sub

这个代码是获取文件夹下所有文件名称的。达到这个效果还有其他的办法,但是我之所以用excelVBA是为了把文件名直接写入到excel中,因为实际工作中,文件名称比我这个例子要复杂得多,比如根据文件名中某个字符来确定这个文件是归类到哪个文件夹,这时候excel的函数或其它功能就能快速搞定这个事情。代码粘贴进去之后关闭VBA编辑界面。

excel 打开vba_vba打开指定workbooks_vba打开指定excel文件

第三步:在开发工具的插入这里,插入一个控件。

如果你的excel没有开发工具,可以点击文件——选项——自定义功能区——勾选开发工具——点击确认即可。

excel 打开vba_vba打开指定excel文件_vba打开指定workbooks

把控件的名称可以改一下,也可以用默认的名称,这都无所谓。

vba打开指定workbooks_vba打开指定excel文件_excel 打开vba

选中这个控件,鼠标右键,点击指定宏。

excel 打开vba_vba打开指定excel文件_vba打开指定workbooks

选择宏,这个sheet1 test就是上面粘贴进去的代码名称,然后点确定。

vba打开指定workbooks_excel 打开vba_vba打开指定excel文件

插入控件是为了方便运行代码,如果不用控件,打开VBA编辑界面vba打开指定excel文件,点击上面的绿色小三角也可以运行代码。如果你不能运行代码,可能是你的excel没有开启宏,可以点击文件——选项——信任中心——信任中心设置——宏设置——启用所有的宏,然后点击确认。

第四步:点击这个控件就可以运行代码,代码会让你选择一个文件夹vba打开指定excel文件,就选择上面那个放了很多需要整理归类文件所在的文件夹。

vba打开指定workbooks_excel 打开vba_vba打开指定excel文件

一瞬间,这个文件夹下所有的文件名就被写入到excel工作表当中。这个代码只能获取到这个文件夹第一层的所有文件名,子文件夹里面文件名不能获取到。

vba打开指定excel文件_excel 打开vba_vba打开指定workbooks

这时候可以用筛选包号1的文件名

vba打开指定workbooks_vba打开指定excel文件_excel 打开vba

然后在目标文件夹这里写入1,表明把这些名称为1的各类型文件放入到文件夹1里去。

第五步:整理完后,从第二行开始向下复制,把所有的内容复制出来。

vba打开指定excel文件_excel 打开vba_vba打开指定workbooks

然后在这个文件夹中新增一个txt文件,也就是新增文本文档,然后把这些内容粘贴进去,如下图所示。(批量处理命令move的意思是,拿第一行举例,把1.accdb这个文件放入到1这个文件夹里)

vba打开指定workbooks_excel 打开vba_vba打开指定excel文件

点击文件,点击另存为,保存路径还是选择这个文件夹,这里的目的主要是确定一下,下图红框处这里是否是ANSI,如果不是,请选择ANSI。

excel 打开vba_vba打开指定excel文件_vba打开指定workbooks

然后把后缀名.txt改成.bat(注意只是改txt,前面有一个“点”,不要删掉了)

excel 打开vba_vba打开指定excel文件_vba打开指定workbooks

改了后缀名会有提示,点“是”就可以了

vba打开指定workbooks_vba打开指定excel文件_excel 打开vba

然后双击这个文件

excel 打开vba_vba打开指定excel文件_vba打开指定workbooks

这个时候所有的文件就分类好了

vba打开指定excel文件_vba打开指定workbooks_excel 打开vba

打开3这个文件夹,这里就全是叫3的文件。

vba打开指定workbooks_vba打开指定excel文件_excel 打开vba

打开4这个文件夹,这里就全是叫4的文件。

vba打开指定workbooks_excel 打开vba_vba打开指定excel文件

好了,文件归类就完成了。

本文由快学excel原创,如有雷同,算我抄你。

关注快学excel收获更多excel实用干货。

———END———
限 时 特 惠:本站每日持续更新海量各大内部创业教程,一年会员只需128元,全站资源免费下载点击查看详情
站 长 微 信:jiumai99

1.站长不是项目作者,不对项目解答及盈亏负责。
2.本站所有项目来源于投稿或购买自其他第三方,若本站侵犯了您的权益请 联系站长 进行删除处理。
找项目网
找项目网 关注:0    粉丝:0
这个人很懒,什么都没写
扫一扫二维码分享
×
Dragon