我尝试更改一些代码,这些代码将所有工作表复制并粘贴到新工作簿中。
问题是我只希望特定区域全部以A5开始,但是最后一行和最后一行是动态的,并且不断变化。
理想情况下,我想将每个范围复制到批处理评估器中的新工作表中,并保持源工作表名称的唯一区别在于我要将范围复制到新工作表的A1中。
Sub CopyWorkbook()
Dim sh As Worksheet, wb As Workbook, sb As Workbook
Dim lRow As Long
Dim lCol As Long
Dim curName As String
Dim copy_value As Range
' get reference to both workbooks
Set sb = Workbooks("Current VA Rating Structure_test")
Set wb = Workbooks("rater_tables")
' loop through worksheets in "Rating Structure" workbook
For Each sh In sb.Worksheets
' get the max row & col of the worksheet, as well as its name
lRow = sh.Cells(sh.Rows.Count, 1).End(xlUp).Row
lCol = sh.Cells(lRow, 1).End(xlToRight).Column
curName = sh.Name
' add a worksheet to the "Rate Tables" workbook and set its name
wb.Worksheets.Add(After:=Worksheets(1)).Name = curName
' copy the range from the old sheet to the new one
sh.Range(sh.Cells(5, 1), sh.Cells(lRow, lCol)).Copy wb.Worksheets(curName).Range("A1")
Next sh
End Sub