У меня есть книга Excel, в которой в настоящее время встроен макрос, который при нажатии кнопки макроса текущая книга сохраняется в директории, которую создает макрос, и затем шаблон стирается в порядке чтобы освободить место для данных на следующий день.Скопируйте весь рабочий лист на другой рабочий лист
Вместо этого макроса спасительного всю книгу как новый файл, который затем должен быть выследили для просмотра, я хотел бы изменить макрос, чтобы сделать следующее:
- Не создавать или сохранять новый файл.
- При щелчке макроса «Новый день» переместите то, что находится на рабочем листе шаблона под названием «Утренний отчет», на новый рабочий лист.
- Имя новой вкладки должно быть датой перемещенного шаблона, который находится в W1.
Вот код:
Sub NewDay()
Dim fn, d, ln
Set fs3 = CreateObject("Scripting.FileSystemObject")
Set fs = CreateObject("Scripting.FileSystemObject")
If fs3.FolderExists("c:\Morning Reports\") = True Then GoTo ext Else GoTo mkdir:
mkdir:
Set d = fs.CreateFolder("c:\Morning Reports\")
With Application
.UserName = "MD Totco"
.StandardFont = "Arial"
.StandardFontSize = "10"
.DefaultFilePath = "c:\Morning Reports\"
.EnableSound = False
.RollZoom = False
End With
ext:
Sheets("Morning Report").Select
ActiveSheet.Unprotect
ChDir "c:\Morning Reports\"
tempdate = ActiveSheet.Range("w1") + 1
ActiveSheet.Range("w1") = tempdate
tDate = Format(tempdate, "mmm d yyyy")
WellName = ActiveSheet.Range("s2")
fName = tDate + ", " + WellName
ActiveWorkbook.SaveAs FileName:=fName
Это будет раздел в Суб NewDay, что создает новый файл и сохранение, остальная часть кода вытирает и освежающий шаблон. Однако я не хочу, чтобы книга была сохранена, я просто хочу, чтобы лист «Утренний отчет» книги был скопирован на новый лист.
Можете ли вы опубликовать код, который будет служить базой для редактирования? –