Я новичок в Excel и пытаюсь заставить свой VBA скопировать лист в другую книгу с помощью этого кода:
Sub CopySheetl()
Dim wkbSource As Workbook
Dim wkbDest As Workbook
Dim shtToCopy As Worksheet
Set wkbSource = Workbooks.Open("C:\Documents and Settings\wong.zuowei\My Documents\Dropbox\SIP\Report Templates\New Documentation System\2014\June Lines Report.xlsm")
Set wkbDest = Workbooks.Open("C:\Documents and Settings\wong.zuowei\My Documents\Dropbox\SIP\Report Templates\New Documentation System\2014\2014 Lines Report.xlsx")
'set shttocopy = wkbsoure.sheets("name of worksheet")
Set shtToCopy = wkbSource.Sheets(9)
shtToCopy.PasteSpecial wkbDest.Sheets(1)
wkbDest.Save
End Sub
В итоге ничего. Ничего не произошло. Я имею в виду, что код работает нормально, но ничего не делает. Мне нужна помощь!
Редактировать:
Я попробовал другой код, как было предложено:
Sub copy_sh()
Dim sourceSheet As Worksheet
Dim destSheet As Worksheet
'' copy from the source
Workbooks.Open filename:="C:\Documents and Settings\wong.zuowei\My Documents\Dropbox\SIP\Report Templates\New Documentation System\2014\June Lines Report.xlsm"
Set sourceSheet = Worksheets("JuneSummary")
sourceSheet.Activate
sourceSheet.Cells.Select
Selection.copy
'' paste to the destination
Workbooks.Open filename:="C:\Documents and Settings\wong.zuowei\My Documents\Dropbox\SIP\Report Templates\New Documentation System\2014\2014 Lines Report.xlsx"
Set destSheet = Worksheets("June")
destSheet.Activate
destSheet.Cells.Select
destSheet.Paste
'' save & close
ActiveWorkbook.Save
ActiveWorkbook.Close
End Sub
Код работал без ошибок компиляции, но тоже ничего не произошло.