[英]Copy and Paste cells x times and change Cell address
我需要復制單元格A1:C10 ,並將它們粘貼 X 次。 X 在單元格 D1 中,也在單元格 A1 中我有一個公式
=IF('C:\Users\..\..\\E kompletuar\[data.xlsx]data'!$H$2=0;"")
我需要將單元格行 $H$ 2更改為單元格A1:C10的粘貼次數。 例如。 $H$ 3 (如果我第一次粘貼),$H$ 4 (如果我第二次粘貼),$H$ 5 (如果我第三次粘貼)...
我想這就是你所追求的
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
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.