自动执行批量复制/粘贴作业

我希望自动执行任务,因为编写脚本工作的速度更快,并且可以将未来实例的任务自动化。 我知道Java所以逻辑在这里(我认为:X),但是我对这个脚本的实际语法和实现感到非常失望。

我有一个称为:

  • Pc_Profile.xls
  • Pc_Profile(N)的.xls
  • Pc_Profile(N + 1)的.xls

我有一个主文档叫:

  • db.xls

每个PCconfiguration文件都有我需要粘贴到主文档中的内容。 这里是内容:

A5:D5,A8:B8,A13:B13,A15:D17,A24:E26,A28:B30,A43:B43,A45:B45

上面列出的单元格的内容需要分成单独的表单,因此每个pc概要文档的内容都不会驻留在主文档(db.xls)中的同一张表单中。 每张纸需要重新命名为单元格A5的内容为每个相应的工作表。

这是我的伪代码:

set screen updating to false set application updating to xlManual //1st run: open pc_profile.xls copy desired contents to clipboard open db.xls paste clipboard to A1 Copy A5 to clipboard Rename sheet > paste from clipboard //second run (loop) $number=1 Foreach file in directory open pc_profile($number).xls copy desired contents to clipboard open db_lukatsy.xls create new sheet set sheet as active paste clipboard to A1 Copy A5 to clipboard Rename sheet > paste from clipboard $number++ object worksheets save changes set screen updating to true 

这是我的思考过程,但如果这不合逻辑,可以随意重新构build。 基本上我的基本情况是第一台个人资料。 然后,我想遍历集合的所有剩余实例,并将内容粘贴到db.xls中,每个都在它们自己的工作表中,并且将其重命名为每个单元格A5。

这是迄今为止我所知道的,尽pipe它还远远没有完成:

 Application.ScreenUpdating = False Application.Calculation = xlManual Set objworkbook = objExcel.Workbooks.Open _ ("\\[directory]\Pc_Profile.xls") objExcel.Visible = False Dim target as Workbook Set target = Application.Workbooks.Add objWorkbook.Worksheets("Pc_Profile").Range("A5:D5").Copy Set objworkbook = objExcel.Workbooks.Open _ ("\\[directory]\db.xls") objExcel.Visible = True Set target = Application.Workbooks.Add objWorkbook.Worksheets("Sheet1").Activate objWorkbook.worksheets("Sheet1").Range("A1").PasteSpecial ActiveSheet.Name = "A5"