【发布时间】:2019-12-27 08:29:11
【问题描述】:
该宏应该创建一个新工作表并将工作表命名为当前日期,从上一个工作表中复制框,将其粘贴到新工作表中,并格式化新框(新日期/清除内容)。
宏运行良好 7 次(每天运行一次),但今天当我运行宏时,它追溯地将单元格的日期(例如 12-17 表在单元格中有 12/17)更改为之后的表。 (所以现在 12-17 表在单元格中有 12/18,12-20 表在单元格中有 12/23 等)。但是,它不再影响我开始使用宏的工作表(12-13 是手动的,12-16 是宏创建的工作表。12-13 不受影响)。
奇怪的是,如果我制作一个缓冲表(Sheet2)并手动将框从 12-24 复制到其中并运行宏,则工作表 12-26 会正常显示并将 Sheet2 中的 12/24 更改为 12/ 26,但保持工作表 12-24 和之前不变。
这是宏的代码:
Sheets.Add(After:=ActiveSheet).Name = Format(Date, "MM-DD-YY")
ActiveSheet.Previous.Select
Cells(2, 2).Value = Format(Date, "MM/DD/YY")
Range("B1:B2").HorizontalAlignment = xlCenter
Range("A1:C21").Select
Selection.Copy
ActiveSheet.Next.Select
ActiveSheet.Paste
Columns("A:A").ColumnWidth = 20
Columns("B:B").ColumnWidth = 25
Columns("C:C").ColumnWidth = 20
Range("C5:C7").ClearContents
Range("C9:C10").ClearContents
Range("C16:C18").ClearContents
End Sub
感谢您的帮助。
【问题讨论】:
-
在非绝对必要时尽量避免选择。见stackoverflow.com/a/10717999/1521579
标签: excel