[英]How to copy paste values within a VBA Loop?
我正在嘗試將單元格 e2 和 f2 的內容的粘貼單元格值復制回相同的相應單元格,作為循環過程的一部分,該循環過程逐行重復此任務(下一行將是 e3 和 f3 的相同過程,並且然后 e4 和 f4 等,直到到達 B 列中的空白單元格。
這是我無法弄清楚的代碼子集(它返回錯誤 1004,Range class 的 PasteSpecial 方法失敗:
tickersSheet.Range("E2").Offset(counter, 0).Copy
tickersSheet.Range("E2").Offset(counter, 0).PasteSpecial Paste:=x1PasteValue
tickersSheet.Range("F2").Offset(counter, 0).Copy
tickersSheet.Range("F2").Offset(counter, 0).PasteSpecial Paste:=x1PasteValue
這是完整的代碼:
Public Sub Email()
Application.Goto Reference:="Email"
' Set a reference to tickers sheet
Dim tickersSheet As Worksheet
Set tickersSheet = ThisWorkbook.Worksheets("Tickers")
' Set a reference to tickers range
Dim tickersRange As Range
Set tickersRange = tickersSheet.Range("B2:B502")
' Set a reference to moves sheet
Dim movesSheet As Worksheet
Set movesSheet = ThisWorkbook.Worksheets("Moves")
' Set a reference to moves starting cell
Dim movesFirstCell As Range
Set movesFirstCell = movesSheet.Range("C4")
' Use a counter to make everything else relative
Dim counter As Long
counter = 0
' Loop through cells in tickers sheet starting in B2
Dim tickersCell As Range
For Each tickersCell In tickersRange
If tickersCell.Value <> vbNullString Then
' Set row reference
Dim rowReference As Long
rowReference = (-2 + counter)
' Store formula
movesFirstCell.Formula2R1C1 = "=Tickers!R[" & rowReference & "]C[-1]"
' Wait for table to generate
Application.Wait (Now + TimeValue("0:00:10"))
' Copy range as picture
movesSheet.Range("B2:L129").CopyPicture
tickersSheet.Range("H2").Offset(counter, 0).PasteSpecial
' Copy paste values for correlations
tickersSheet.Range("E2").Offset(counter, 0).Copy
tickersSheet.Range("E2").Offset(counter, 0).PasteSpecial Paste:=x1PasteValue
tickersSheet.Range("F2").Offset(counter, 0).Copy
tickersSheet.Range("F2").Offset(counter, 0).PasteSpecial Paste:=x1PasteValue
' Increment counter
counter = counter + 1
End If
Next tickersCell
End Sub
無需使用復制和粘貼
僅參考單元格值就足夠了
嘗試這個:
tickersSheet.Range("F2").Offset(counter, 0).Value = tickersSheet.Range("F2").Offset(counter, 0).Value
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.