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
谢谢
西部