Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 3287|回复: 2

[已解决]遍历工作薄

[复制链接]
发表于 2016-1-11 15:05 | 显示全部楼层 |阅读模式
使用“遍历.xlsm”工作薄里面的代码,怎么多了一个“~$遍历.xlsm文件”,


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

        Cells(a, 1) = f.Name '相对路径名
        Cells(a, 2) = f '全路径名
        a = a + 1
    Next f
    Application.ScreenUpdating = True
End Sub

最佳答案
2016-1-11 19:21
加上下面的语句:

If Not f.Name Like "~$" & ThisWorkbook.Name Then
            Cells(a, 1) = f.Name '相对路径名
            Cells(a, 2) = f '全路径名
            a = a + 1
End If

遍历.zip

16.76 KB, 下载次数: 4

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2016-1-11 18:33 | 显示全部楼层
excel文件打开后,都会自动产生一个“~$"开头的同名文件,
这是隐藏文件,正常情况下是看不到的,
如果遍历时不想遍历到这个文件可以加个判断过滤。
回复

使用道具 举报

发表于 2016-1-11 19:21 | 显示全部楼层    本楼为最佳答案   
加上下面的语句:

If Not f.Name Like "~$" & ThisWorkbook.Name Then
            Cells(a, 1) = f.Name '相对路径名
            Cells(a, 2) = f '全路径名
            a = a + 1
End If
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-25 22:34 , Processed in 0.475620 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表