VBA,重命名 Excel 中的相关 sheet
VBA, Renaming the relevant sheet in Excel
我使用了两次命令 "Workbooks.Open Filename..." 来打开要从中复制的文件(第一次已经打开)。
是否有其他经济的解决方案而不是两次提及而是参考已经打开的工作簿?此外,命令:ActiveSheet.Name = "Spread" 不会在粘贴的 sheet 中重命名。只有当我把相关的表格放在前面时,它才会这样做。
Sub CopyAndPaste()
Dim wb As Workbook
Dim ws As Worksheet
Set wb = Workbooks.Add
Set ws = wb.Worksheets("Tabelle1")
datDatum = Now
Workbooks.Open
Filename:="C:\Users\........xls" *'the source file'*
Sheets("Hypothekenbanken").Range("A11:P57").Copy
ws.Range("A2").PasteSpecial
ActiveSheet.Name = "Spread"
关于第一个复制值被第二个覆盖的说法,你是对的。
所以你必须先复制第一个值 -> 粘贴第一个值 -> 复制第二个值 -> 粘贴第二个值
像这样:
Dim wb As Workbook
Dim ws as worksheet
Set wb = Workbooks.Add
Set ws = wb.Worksheets("Sheet1")
Sheets("Hypothekenbanken").Range("A11:P57").Copy
ws.Range("A2").PasteSpecial
Sheets("Landesbanken").Range("A11:P41").Copy
ws.Range("A3").PasteSpecial
我使用了两次命令 "Workbooks.Open Filename..." 来打开要从中复制的文件(第一次已经打开)。
是否有其他经济的解决方案而不是两次提及而是参考已经打开的工作簿?此外,命令:ActiveSheet.Name = "Spread" 不会在粘贴的 sheet 中重命名。只有当我把相关的表格放在前面时,它才会这样做。
Sub CopyAndPaste()
Dim wb As Workbook
Dim ws As Worksheet
Set wb = Workbooks.Add
Set ws = wb.Worksheets("Tabelle1")
datDatum = Now
Workbooks.Open
Filename:="C:\Users\........xls" *'the source file'*
Sheets("Hypothekenbanken").Range("A11:P57").Copy
ws.Range("A2").PasteSpecial
ActiveSheet.Name = "Spread"
关于第一个复制值被第二个覆盖的说法,你是对的。 所以你必须先复制第一个值 -> 粘贴第一个值 -> 复制第二个值 -> 粘贴第二个值
像这样:
Dim wb As Workbook
Dim ws as worksheet
Set wb = Workbooks.Add
Set ws = wb.Worksheets("Sheet1")
Sheets("Hypothekenbanken").Range("A11:P57").Copy
ws.Range("A2").PasteSpecial
Sheets("Landesbanken").Range("A11:P41").Copy
ws.Range("A3").PasteSpecial