首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >文件操作——举例

文件操作——举例

作者头像
xyj
发布2020-07-28 11:12:13
发布2020-07-28 11:12:13
8240
举报
文章被收录于专栏:VBA 学习VBA 学习

1、根据表格内容批量创建文本文档:

我们前面提到过,并没有直接创建文件的功能,但是在写入1个不存在的文件的时候,程序是可以自动创建文件的,所以只需要把写入文件的功能中的写入操作省略掉,就仅仅是创建1个空文件了。

根据A列的内容,批量创建txt文件。

代码语言:javascript
复制
Sub CreateTxts()
    Dim i_row As Long
    Dim Arr() As Variant
    
    '读取数据到数组
    i_row = Cells(Cells.Rows.Count, 1).End(xlUp).Row
    Arr = Range("A1").Resize(i_row).Value
    
    Dim i As Long
    For i = 2 To i_row
        CreateTxt ThisWorkbook.Path & "\" & VBA.CStr(Arr(i, 1)) & ".txt"
    Next
    
    '释放数组
    Erase Arr
End Sub

Function CreateTxt(FilePath As String)
    Dim num_file As Integer
    
    '获取1个文件号
    num_file = VBA.FreeFile
    
    Open FilePath For Binary Access Write As #num_file

    '关闭文件
    Close #num_file
End Function

2、删除指定条件的文件:

比如需要删除某个文件夹下后缀为txt的文件,删除文件是使用Kill,再配合Dir的遍查找遍历来处理:

代码语言:javascript
复制
Sub KillTxt()
    Dim fn As String
    Dim strdir As String
    
    strdir = ThisWorkbook.Path & "\"
    '*代表查找所有的文件以及文件夹,也可以使用"*.xlsx"这样的形式查找后缀为.xlsx的文件
    '第一次调用返回第1个符合条件的,没有的情况下会返回空字符串
    fn = VBA.Dir(strdir & "*.txt", vbDirectory)
    Do Until fn = ""
        VBA.FileSystem.Kill strdir & fn
        '一定要再次调用不带参数的Dir函数,这将返回下一个符合条件的
        fn = VBA.Dir()
    Loop
End Sub
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 VBA 学习 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档