连接两列并粘贴到新的工作簿

我想连接两列,并将其粘贴到同一工作簿中的另一个工作表中。 有一个复杂的事情,我必须做一个预定义范围的行,而不是整个列。 我设法得到一列复制如下,但我不知道如何将其扩展到两列的连接。

Sub Write_Rows(StartRow As Integer, EndRow As Integer) Dim CopySheet As Worksheet, PasteSheet As Worksheet Set CopySheet = Sheets("Sheet1") Set PasteSheet = Sheets("Master") 'I already made this sheet CopySheet.Range("B" & StartRow, "B" & EndRow).Copy PasteSheet.Range("A2") End Sub 

我想要做的就是在这个问题中接受的答案,但在Excel中不是Google Spreadsheets。

你可以通过数组公式来完成,然后删除公式并修改值。 假设你想连接列B和C:

 Sub Write_Rows(StartRow As Integer, EndRow As Integer) Dim dest As Range: Set dest = Sheets("Master").Range("A2:A" & 2 + EndRow - StartRow) Dim src1 As Range: Set src1 = Sheet1.Range("B" & StartRow & ":B" & EndRow) Dim src2 As Range: Set src2 = src1.Offset(0, 1) dest.FormulaArray = "=" & src1.Address(External:=True) & "&" & src2.Address(External:=True) dest.Value = dest.Value End Sub