Excel精英培训网

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

那位高手指点一下关于2007兼容问题

[复制链接]
发表于 2012-5-28 23:12 | 显示全部楼层 |阅读模式
您好请问一下代码在2007上如何实现?
    With Application.FileSearch
      .NewSearch
      .LookIn = ReviewPath
      .SearchSubFolders = True
      .Filename = ReviewFileName
      .MatchTextExactly = True
      .FileType = msoFileTypeAllFiles
       If .Execute() > 0 Then
         FileCopy ReviewPath & ReviewFileName, UsingPath & NewUsingFileName
         Kill ReviewPath & ReviewFileName
       End If
   
    End With
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2012-5-28 23:35 | 显示全部楼层
用DIR进行循环
Sub 父子转换法()
  'On Error Resume Next
  Dim 父亲(1 To 10000) As String
  Dim f, i, k, f2, f3, x
  Dim arr1(1 To 100000, 1 To 1) As String, q As Integer
  Dim t
  t = Timer
  父亲(1) = ThisWorkbook.path & "\"
  i = 1: k = 1
  Do While i < UBound(父亲)
    If 父亲(i) = "" Then Exit Do
    f = Dir(父亲(i), vbDirectory)
    Do
      If InStr(f, ".") = 0 And f <> "" Then
        k = k + 1
        父亲(k) = 父亲(i) & f & "\"
      End If
      f = Dir
    Loop Until f = ""
    i = i + 1
  Loop
  '*******下面是提取各个文件夹的文件***
  For x = 1 To UBound(父亲)
      If 父亲(x) = "" Then Exit For
       f3 = Dir(父亲(x) & "*.*")
     Do While f3 <> ""
       q = q + 1
       arr1(q, 1) = 父亲(x) & f3
       f3 = Dir
     Loop
  Next x
  ActiveSheet.UsedRange = ""
  Range("a1").Resize(q) = arr1
  MsgBox Format(Timer - t, "0.00000")
End Sub
回复

使用道具 举报

 楼主| 发表于 2012-5-29 06:38 | 显示全部楼层
本帖最后由 tiantq 于 2012-5-29 06:50 编辑

非常感谢老师的解答
我想问问
如果
2003版写的是
    With Application.FileSearch
      .NewSearch
      .LookIn = ReviewPath
      .SearchSubFolders = True
      .Filename = ReviewFileName
      .MatchTextExactly = True
      .FileType = msoFileTypeAllFiles
       If .Execute() > 0 Then
         FileCopy ReviewPath & ReviewFileName, UsingPath & NewUsingFileName
         Kill ReviewPath & ReviewFileName
       End If   
    End With
-----------------------------------------------------------------------------------------------------
我修改成2007这样写对吗?
FileName = Dir(ReviewPath & "\" & ReviewFileName)  '获取文件名
x = 0
Do  '开始循环
   x = x + 1
    If FileName = ReviewFileName Then
       FileCopy ReviewPath & "\" & ReviewFileName, UsingPath & NewUsingFileName
       Kill ReviewPath & ReviewFileName
    End If
Loop Until ReviewFileName = ""  '直到结束
-------------------------------------------------------------------------------------------------------
当然ReviewPath 、ReviewFileName、UsingPath 、NewUsingFileName、FileName等变量都已经进行过声明
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-18 08:25 , Processed in 0.743932 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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