复制当前路径的所有文件到指定文件夹【三种方法】

【引用地址】http://www.exceltip.net/thread-54671-1-1.html

如何复制当前路径的所有文件到指定文件夹

方法一:**FileCopy **
可在VBA中直接引用,单个文件的copy。所以本例中用循环+复制完成。
语法:
FileCopy 源文件名,目标文件名 【两个参数都是必选的,且都包含路径。】

注:如果想要对一个已打开的文件使用 FileCopy 语句,则会产生错误。所以用了 ActiveWorkbook.SaveCopyAs +完整路径

代码:

  1. Sub 复制当前路径的所有文件到指定文件夹_FileCopy()

  2. t = Timer

  3. Dim 当前路径 As String, 目标路径 As String

  4. Dim fs

  5. On Error Resume Next

  6. 当前路径 = ThisWorkbook.Path & ""

  7. 目标路径 = "C:\汇总数据" '目标目录

  8. fs = Dir(当前路径 & "") '如果只复制xls则把 "" 改成 "*.xls")

  9. Do While fs <> ""

  10. FileCopy 当前路径 & fs, 目标路径 & fs

  11. fs = Dir

  12. Loop

  13. ActiveWorkbook.SaveCopyAs 目标路径 & ThisWorkbook.Name

  14. '*******如果想要对一个已打开的文件使用 FileCopy 语句,则会产生错误******

  15. MsgBox Format(Timer - t, "0.0000")

  16. End Sub

复制代码

方法二:CopyFile
需调用FileSystemObject,多个文件可使用通配符。
语法:

object.CopyFile source, destination[, overwrite]

**CopyFile **方法语法有如下几部分:

| 部分 | 描述 |
| object | 必需的。object始终是一个 **FileSystemObject 的名字。 |
| source | 必需的。指明一个或多个要被复制文件的字符串文件说明,它可以包括通配符。 |
| destination | 必需的。指明
source 中的一个或多个文件要被复制到的接受端的字符串,不允许有通配符。 |
| overwrite | 选项的。
Boolean 值,它表示存在的文件是否被覆盖。如果是 True,文件将被覆盖;如果是 False,它们不被覆盖。缺省值是 True。注意如果 destination 具有只读属性设置,不论 overwrite 值如何,CopyFile **都将失败。 |

代码:

  1. Sub 复制当前路径的所有文件到指定文件夹_CopyFile()

  2. t = Timer

  3. Dim Fso As Object

  4. Dim 当前路径 As String, 目标路径 As String

  5. 当前路径 = ThisWorkbook.Path & "*." '如果只复制xls则把 "." 改成 ".xls"

  6. 目标路径 = "C:\汇总数据" '目标路径

  7. Set Fso = CreateObject("Scripting.FileSystemObject")

  8. Fso.CopyFile 当前路径, 目标路径

  9. Set Fso = Nothing

  10. MsgBox Format(Timer - t, "0.0000")

  11. End Sub

复制代码 方法三:XCopy
批处理,shell调用
**文中用了 ****shell ****Environ("ComSpec") **
其中:Environ("ComSpec") 可以获得下列文字"c:\windows\system32\cmd.exe"
语法:
XCOPY source [destination]

| source | 指定要复制的文件。 |
| destination | 指定新文件的位置和/或名称。 |

指定要复制文件也可带通配符。还包含很多参数。XCOPY是COPY的扩展,可以把指定的目录连文件和目录结构一并拷贝,但不能拷贝系统文件。
代码:

  1. Sub 复制当前路径的所有文件到指定文件夹_XCOPY()

  2. t = Timer

  3. Dim 当前路径 As String, 目标路径 As String

  4. 当前路径 = ThisWorkbook.Path & "*." '如果只复制xls则把 "." 改成 ".xls"

  5. 目标路径 = "C:\汇总数据" '目标路径

  6. Shell Environ("comspec") & " /c xcopy " & 当前路径 & " " & 目标路径, vbHide

  7. MsgBox Format(Timer - t, "0.0000")

  8. End Sub

复制代码

三种方法速度对比
附件中有文件101个,每个约20K左右
FileCopy:约0.3秒
CopyFile:约0.06秒

XCopy: 约0.007秒

使用批处理,超快。
附件:
<ignore_js_op style="word-wrap: break-word; color: rgb(68, 68, 68); font-family: Tahoma, Deng; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255);">

image

复制当前路径的所有文件到指定文件夹_芐雨.zip (1.36 MB, 下载次数: 318)</ignore_js_op>

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容