我需要复制单元格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'循环完成。否则,你不清楚你在问什么(特别是你在哪里粘贴*到*?)。 –