Excel VBA PasteSpecial Transpose:= True仅发布范围中的最后一个值

时间:2018-03-16 00:57:16

标签: vba excel-vba excel

我有这个代码,它将找到B列中所有值,其中A列与声明的值ThisCell匹配。我知道大约有15个匹配值。当我尝试使用此代码将这些值粘贴到ThisCell右侧的单元格中时

For i = 4 To Finalrow
If Cells(i, 1) = ThisCell Then
Range(Cells(i, 2), Cells(i, 2)).Copy
ThisCell.Offset(0, 1).PasteSpecial Transpose:=True


End If

我只获取此单元格右侧单元格中的最后一个值。我看到单元格通过所有值更新。当我添加这样的resize参数时 ThisCell.Offset(0,1).resize(,20).PasteSpecial Transpose:= True我得到20个单元格填充了最后一个值。知道怎么写ThisCell.Offset(0,1).PasteSpecial Transpose:= True所以我得到了所有的值?

1 个答案:

答案 0 :(得分:0)

我应该首先想到这一点 - 问题在于我如何编写Thiscell.offset行。使用单元格方法我将代码重写为

  Cells(ThisCell.Row, Columns.Count).End(xlToLeft).Offset(, 1).PasteSpecial 
  _ Transpose:=True

这就像一个魅力。