從A6:AM46,A52:AM84
複製值到AN6:BZ46,AN52:BZ84
,你可以做到以下幾點:使用
Sub PreparerGrilles()
Range("AN6:BZ46").Value = Range("A6:AM46").Value
Range("AN52:BZ84").Value = Range("A52:AM84").Value
End Sub
版本的Range.Copy
方法:
Sub PreparerGrilles()
Range("A6:AM46").Copy Destination:=Range("AN6:BZ46")
Range("A52:AM84").Copy Destination:=Range("AN52:BZ84")
Range("AN6:BZ46").Value = Range("AN6:BZ46").Value
Range("AN52:BZ84").Value = Range("AN52:BZ84").Value
End Sub
我建議你不要慢你的代碼通過使用這個。如果您的公式涉及任何不屬於副本的內容,它也會導致潛在的錯誤值。
Sub PreparerGrilles()
Range("A6:AM46").Copy
Range("AN6:BZ46").PasteSpecial xlPasteValues
Range("A52:AM84").Copy
Range("AN52:BZ84").PasteSpecial xlPasteValues
End Sub
我強烈建議不要使用這種方法,因爲它會導致太多的「不可再生」的錯誤是由於用戶通過之間的剪貼板複製的東西:
使用PasteSpecial xlPasteValues
方法版當您的代碼執行復制並執行粘貼時,以及由於您的複製將用戶可能已手動粘貼到剪貼板的事實分開。
當您的問題顯示「A6:AM84」時,爲什麼您的代碼使用「A6:AL46,A52:AM84」?如果行和列寬度不同,則不能複製多個選擇。 – YowE3K
範圍(「A6:AM84」)給了我同樣的問題...... –
(a)使用'Range(「A6:AL46,A52:AM84」)''會給你一個'這個命令不能用於多選'錯誤。使用'Range(「A6:AM84」)'會給你一個'工作表類失敗的粘貼方法'錯誤。這不是同一個問題。 (b)爲了讓我們能夠提供一個答案,您的實際範圍是**,試圖複製? – YowE3K