Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 如何将以下内容添加到循环中?_Excel_Vba - Fatal编程技术网

Excel 如何将以下内容添加到循环中?

Excel 如何将以下内容添加到循环中?,excel,vba,Excel,Vba,我已经使用下面的循环一段时间了。您能告诉我如何在它上面添加一行,这样每次运行它时,它都会运行,并适用于每次新的计算吗 Sub CVaR_R() Const NUM_TIMES As Long = 1321 Dim ShtCalc As Worksheet, shtData As Worksheet Dim rngCopy As Range, i As Long Dim Arr As Variant Set ShtCalc = Sheets("CVaR") Set shtData = Sheet

我已经使用下面的循环一段时间了。您能告诉我如何在它上面添加一行,这样每次运行它时,它都会运行,并适用于每次新的计算吗

Sub CVaR_R()
Const NUM_TIMES As Long = 1321
Dim ShtCalc As Worksheet, shtData As Worksheet
Dim rngCopy As Range, i As Long
Dim Arr As Variant

Set ShtCalc = Sheets("CVaR")
Set shtData = Sheets("Data")
Set rngCopy = shtData.Range("A1:A375")

   For i = 1 To NUM_TIMES
   Set rngCopy = shtData.Range(shtData.Cells(1, i), shtData.Cells(375, i))
With ShtCalc
   .Range("L5").Resize(rngCopy.Rows.Count, 1).Value = rngCopy.Value

.Calculate

.Range("I" & Cells(Rows.Count, "I").End(xlUp).Row + 1).Value = .Range("G10").Value
End With
Next i
End Sub
我需要在上面的代码中添加以下行,这样每个循环都会更改值

.Range("G10").Formula = "=(1/G5)*SUM(L5:L" & .Cells(3, 7).Value & ")"
谢谢 韦斯特我已经拿到了

Sub CVaR_R()
Const NUM_TIMES As Long = 1321
Dim ShtCalc As Worksheet, shtData As Worksheet
Dim rngCopy As Range, i As Long
Dim Arr As Variant

Set ShtCalc = Sheets("CVaR")
Set shtData = Sheets("Data")
Set rngCopy = shtData.Range("A1:A375")

   For i = 1 To NUM_TIMES
   Set rngCopy = shtData.Range(shtData.Cells(1, i), shtData.Cells(375, i))
With ShtCalc
   .Range("L5").Resize(rngCopy.Rows.Count, 1).Value = rngCopy.Value
.Range("G10").Formula = "=(1/G5)*SUM(L5:L" & .Cells(3, 7).Value & ")"
.Calculate

.Range("I" & Cells(Rows.Count, "I").End(xlUp).Row + 1).Value = .Range("G10").Value
End With
Next i
End Sub
问题还在于
.Cells(3,7).Value

谢谢 韦斯特我已经拿到了

Sub CVaR_R()
Const NUM_TIMES As Long = 1321
Dim ShtCalc As Worksheet, shtData As Worksheet
Dim rngCopy As Range, i As Long
Dim Arr As Variant

Set ShtCalc = Sheets("CVaR")
Set shtData = Sheets("Data")
Set rngCopy = shtData.Range("A1:A375")

   For i = 1 To NUM_TIMES
   Set rngCopy = shtData.Range(shtData.Cells(1, i), shtData.Cells(375, i))
With ShtCalc
   .Range("L5").Resize(rngCopy.Rows.Count, 1).Value = rngCopy.Value
.Range("G10").Formula = "=(1/G5)*SUM(L5:L" & .Cells(3, 7).Value & ")"
.Calculate

.Range("I" & Cells(Rows.Count, "I").End(xlUp).Row + 1).Value = .Range("G10").Value
End With
Next i
End Sub
问题还在于
.Cells(3,7).Value

谢谢 西部