【发布时间】:2017-06-26 20:27:18
【问题描述】:
如何缩短此代码以重复任务,但占用更少空间?这段代码需要为另外 27 个用户运行。我知道我现在完全是个菜鸟,但这可以减轻我每天一个多小时的工作量......
Workbooks.Open ("https://blabla/Edgars/2017 Q3Q4/Edgars.xlsx")
Workbooks("Edgars.xlsx").Activate
Range("C24:AN27").Select
Selection.Copy
Workbooks("abc.xlsx").Activate
Sheets("Edgars").Activate
Range("C24:AN27").Select
ActiveSheet.Paste
Workbooks("Edgars.xlsx").Activate
Sheets("Edgars").Activate
Range("C33:AN36").Select
Selection.Copy
Workbooks("abc.xlsx").Activate
Sheets("Edgars").Activate
Range("C33:AN36").Select
ActiveSheet.Paste
Workbooks("Edgars.xlsx").Activate
Sheets("Edgars").Activate
Range("C42:AN45").Select
Selection.Copy
Workbooks("abc.xlsx").Activate
Sheets("Edgars").Activate
Range("C42:AN45").Select
ActiveSheet.Paste
Workbooks("Edgars.xlsx").Activate
Sheets("Edgars").Select
ActiveWindow.SelectedSheets.Delete
Workbooks("abc.xlsx").Activate
Sheets("Edgars").Select
Sheets("Edgars").Copy Before:=Workbooks("Edgars.xlsx"). _
Sheets(1)
Workbooks("Edgars.xlsx").Activate
Range("A1").Select
ActiveWorkbook.SaveAs Filename:="https://blabla/Edgars/2017 Q3Q4/Edgars.xlsx"
ActiveWorkbook.Close
Workbooks("abc.xlsx").Activate
Worksheets("TOOLS").Activate
Application.DisplayAlerts = True
Else
End If
【问题讨论】:
-
您应该添加更多信息,简要描述代码的用途(和/或添加一些 cmets)。我也不清楚你所说的“缩短”是什么意思。是否有多个文件,需要通过代码运行?如果是,是否有某种命名结构?
-
究竟花了你一个小时?运行代码还是调整代码中的值?使用任何类型的循环很可能不会导致执行速度发生任何显着变化。
-
感谢您的 cmets!我的意思是这段代码(相同的东西,不同的文件)需要为另外 20 个不同用户名的用户重复(当然)。我开始深入研究 Siddharth 发布的文章,并正在努力缩短这篇文章。我需要一个小时或更长时间才能为这些人手动复制所有内容:)