我需要複製單元格A1:C10,並將它們粘貼X次。的X是在小區D1,同樣在單元格A1我有一個式複製並粘貼單元格x次並更改單元格地址
=IF('C:\Users\..\..\\E kompletuar\[data.xlsx]data'!$H$2=0;"")
我所需要的單元行$ H $ 通過的次數來改變細胞A1:C10是粘貼。例如。 $ H $ (如果我粘貼第一次),$ H $ (如果我粘貼第二次),$ H $ (如果我粘貼第3次)...
我需要複製單元格A1:C10,並將它們粘貼X次。的X是在小區D1,同樣在單元格A1我有一個式複製並粘貼單元格x次並更改單元格地址
=IF('C:\Users\..\..\\E kompletuar\[data.xlsx]data'!$H$2=0;"")
我所需要的單元行$ H $ 通過的次數來改變細胞A1:C10是粘貼。例如。 $ H $ (如果我粘貼第一次),$ H $ (如果我粘貼第二次),$ H $ (如果我粘貼第3次)...
我認爲這就是你以後的樣子
Sub foo()
Dim x as Long, numberOfTimes as Long 'number of times to "copy"
Dim rngToCopy as Range
Dim rngToPaste as Range
Dim A1_FORMULA as String
'## Define the range you want to copy:
Set rngToCopy = Range("A1:C10")
'## Get the number "X" from cell D1:
numberOfTimes = Range("D1").Value
For x = 1 to numberOfTimes
'## Define your base formula:
A1_FORMULA = "=IF('C:\Users\..\..\\E kompletuar\[data.xlsx]data'!$H$" & CStr(2 + x) & "=0;"""")"
'# Determine where to paste:
Set rngToPaste = rngToCopy.Offset(x*(rngToCopy.Rows.Count + 2))
'# Copy and Paste
rngToCopy.Copy Destination:=rngToPaste
'# Update the formula in the first copied cell/column A:
rngToPaste.Cells(1,1).Formula = A1_FORMULA
Next
End Sub
調試它並找出結果第二次迭代中的「rngToPaste.Address」是什麼? –
非常感謝你的工作,除了它粘貼的次數,它只粘貼一次,而不是單元格D1中的數字,公式也會改變,但不會像指定的那樣改變爲隨機值 – vivi
什麼都不是「隨機」:)調試它通過逐步完成代碼。在第一次迭代中'x'的值是多少?第二次迭代?等等。在每次迭代時,「rngToPaste.Address」的價值是什麼? –
你試過的任何代碼? – Vasim
不,我沒有嘗試任何即時通訊在網上搜索 – vivi
這可以用一個'For'循環完成。否則,你不清楚你在問什麼(特別是你在哪裏粘貼*到*?)。 –