我做一些VBA代碼來幫我做下將其粘貼到另一個工作表:VBA:通過名爲範圍的列表循環和基於地址的參考
通過粘貼所有命名範圍的列表 循環基於該列表 的名單和複製/選擇範圍每個選擇都會給出具有一定的地址引用來自該地址的偏移另一片粘貼
我非常新的VBA,所以我已經把一些代碼,我認爲會做的伎倆,但我得到運行時錯誤。有人可以幫我排除故障或提供建議嗎?
我的代碼是在這裏:
Sub RangeLoop()
Sheets("RANGEMATCH").Select
Range("A1").ListNames
Dim columnrange As Range
Dim m As Long
Dim address As Range
Set columnrange = Sheets("RANGEMATCH").Range("A:A").SpecialCells(xlConstants)
With columnrange
For m = 1 To columnrange.Areas.Count
Set address = Sheets("RANGEMATCH").Range(.Areas(m).Cells(1, 7).Value)
Range(m).Copy Sheets("ETIE").Range(address.Offset(1, 10))
Next
End With
End Sub
以下是我與工作的一個例子的工作簿:
https://docs.google.com/spreadsheet/ccc?key=0AodOP_8DnJnFdHJoQ0xBM3JUUGJxT3EyRXN0T2ltUmc&usp=sharing
任何建議表示讚賞。
您可能會受益於這兩個技巧:使用'選項Explicit' - [見TLiebe的答案](http://stackoverflow.com/questions/2454552/whats-an-option-strict-and-explicit)和[避免使用'Select'](包括http://stackoverflow.com/questions/10714251/excel-macro-avoiding-using-select) - 包括避免使用'Activate' – JustinJDavies
此外,您可能想告訴我們錯誤是什麼,以及它是哪一行。 – Larry
錯誤顯示在此行上: 範圍(m).Copy表(「ETIE」)。範圍(address.Offset(1,10)) – eMTy