2016-12-09 62 views
0

我想根據單元格中包含的值來定義和複製一系列單元格。定義單元格內容的範圍選擇

如果電池W2包含條目「B6:B12」,那麼代碼將選擇範圍和內容複製到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 

回答

1

你的描述有點神祕。像那樣的東西?

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 
+0

謝謝,併爲模糊的描述道歉。這正是我所期待的! –

1

這是你在找什麼?

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 

你試圖設置一個範圍,並在同一時間進行復制,不工作

1

如果你想複製粘貼>>(不使用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