For i = 3 To 50
If lngRow = Range("A" & i) Then
Range("A1:EN3").Rows(i).Copy
Range("A1:EN3").Columns(strCol).Offset(, 1).PasteSpecial Transpose:=True
Range("A1:EN3").Rows(1).Copy
Range("A1:EN3").Columns(strCol).PasteSpecial Transpose:=True
Exit For
End If
Next i
您好我已经编写了用于选择行的代码并将其粘贴到列中 它工作正常,但我的问题是在这里我给范围作为范围(“a1:en3”),但每次它可能更多的值比这更可能复制行数据之前空白单元格,如我们可以复制空白单元格i之前的列,e范围(rng,rng.End(xlDown))。复制。
答案 0 :(得分:0)
Function firstblank()
i=1
While (worksheets("WORKSHEETNAMEHERE").cells(i,1).value<>"")
i=i+1
wend
return i
End function
不完全确定我理解你的问题,但粘贴转置值应该像以下一样简单:
Range("T5").Select
Selection.PasteSpecial Transpose:=True
(我不会定义一个大于一个单元格的范围来写入值;如果你给多个单元格excel将需要你的目标具有你想要写的东西的确切尺寸)