从单元格内容中定义范围select

我想根据单元格中包含的值来定义和复制一系列单元格。

如果单元格W2包含条目“B6:B12”,则代码将select该范围并将内容复制到列X中

Sub RangeSel() Dim rng As Range Dim Sel As String Sel = Range("W2").Value Set rng = Range("Sel").Copy(Range(Range("X2"), Range("X2").End(xlDown))) End Sub 

你的描述是有点神秘。 类似的东西?

 Sub RangeSel() Dim rng As Range Dim Sel As String Sel = Range("W2").Value Set rng = Range(Sel) rng.Copy Range(Range("X2"), Range("X2").End(xlDown)).PasteSpecial xlPasteAll End Sub 

这是你想要的?

 Sub RangeSel() Dim rng As Range Dim Sel As String Sel = Range("W2").Value Set rng = Range(Sel) rng.Copy Range("X2").PasteSpecial End Sub 

您尝试设置范围并同时复制,不起作用

如果你想复制>>粘贴 (不使用粘贴 PasteSpecial ),那么你可以用1行代码,如下所示:

 Sub RangeSel() Dim rng As Range Dim Sel As String Sel = Range("W2").Value Set rng = Range(Sel) ' optional : make sure there is a valid range If Not rng Is Nothing Then rng.Copy Destination:=Range("X2") ' copy>>paste in 1 line, paste at column X second row End If End Sub