将值复制并粘贴到mastersheet中的同一行

时间:2016-06-09 13:48:22

标签: excel vba excel-vba

我有以下代码,它从名为copySheet的工作表中复制并粘贴列,并将名为pasteSheet的工作表粘贴到第一个空行。

 lRow = copySheet.Cells(copySheet.Rows.Count, 1).End(xlUp).Row

  With copySheet.Range("BX2:BX" & lRow)
   pasteSheet.Cells(Rows.Count, "A").End(xlUp).Offset(1, 0)
 .Resize(.Rows.Count, .Columns.Count) = .Value
  End With

 'Determine last row of Column B in copySheet
  lRow = copySheet.Cells(copySheet.Rows.Count, 1).End(xlUp).Row

 With copySheet.Range("CC2:CC" & lRow)
 pasteSheet.Cells(Rows.Count, "B").End(xlUp).Offset(1, 0)
.Resize(.Rows.Count, .Columns.Count) = .Value
 End With

现在我想从“copySheet”复制BB列(从BB2开始)和AK(从AK2开始)并将它们粘贴到“pasteSheet”中的L列。 BB和AK值应该在同一个单元格中彼此之间有一个空白。有谁知道我怎么做到这一点?

1 个答案:

答案 0 :(得分:1)

听起来你想要获得2个单元格,将它们与空格连接在一起,然后将该值设置为另一个单元格?您可以使用For循环轻松完成此操作:

For myLoop = 2 to lRow 
    ' recalc firstEmptyRow and increment to get first empty row
    firstEmptyRow = pasteSheet.Cells(pasteSheet.Rows.Count, "L").End(xlUp).Row + 1
    myVal = copySheet.Range("BB" & myLoop).Value & " " & _
    copySheet.Range("AK" & myLoop).Value
    pasteSheet.Range("L" & firstEmptyRow).value = myVal 
Next

在这种情况下,我假设您希望将值发布到您在copySheet中复制的pasteSheet中的同一行;如果没有,则必须更改pasteSheet.Range

中的位置