excel - 扩大范围内的最大值
问题描述
我如何处理以下任务?在单元格 A2 中,我有一个公式可以连续迭代并提供结果。每次迭代的结果都列在 B2、B3 等中。
同时在 C2、C3 等中,我捕获了相应的时间戳。基本上,经过几次迭代后,我在 B 列中有一个结果列表,在 C 列中有一个时间戳列表。我已经设法编写了这部分代码。
现在我的问题是:由于我有时间戳,我会在某一时刻知道在第一分钟内生成了例如 6 个结果。因此,我们正在查看的结果范围是 B2:B7。
基于该扩展范围,我需要在 E2 中捕获最大结果,因为范围随每次迭代而变化,直到达到 B7。由于我不知道在第一分钟内会产生多少结果,我需要在每次迭代时更新 E2。一旦第 2 分钟开始,我希望能够做同样的事情并在 E3 中捕获最大结果。显然,新范围将从 B8 开始,并根据 A2 中完成的计算次数而扩大。
如果我能做 10 分钟,我将在 E2 到 E11 的范围内显示 10 个最大结果。
下面是我的代码。它仅部分执行了我上面描述的内容。任何想法如何使它工作?非常感谢您的帮助!谢谢!
在以下链接下,我已经可视化了问题:
Private Sub Worksheet_Calculate()
Dim lastrow As Long
lastrow = Worksheets(1).Cells(Rows.Count, 2).End(xlUp).Row
With Worksheets(1).Cells(lastrow, 2)
.Offset(1, 0) = Cells(2, 1).Value
.Offset(1, 1) = FormatDateTime(Now, vbLongTime)
End With
Call Generator
End Sub
Sub Generator()
Dim icount As Long
Dim rcount As Long
icount = 2
rcount = 2
For tcount = 1 To 10
Do While DateDiff("s", Cells(2, 3), Cells(icount, 3)) <= tcount * 60
Cells(tcount + 1, 5) = WorksheetFunction.Max(Range(Cells(rcount, 2), Cells(icount, 2)))
icount = icount + 1
Loop
rcount = icount
Next tcount
End Sub
解决方案
解决此问题的一种方法是检查每次迭代的时间,如果分钟不同,请随时填充列 E。
像这样的东西:
Private Sub Worksheet_Calculate()
Dim lastrow As Long
lastrow = Worksheets(1).Cells(Rows.Count, 2).End(xlUp).Row
With Worksheets(1).Cells(lastrow, 2)
.Offset(1, 0) = Cells(2, 1).Value
.Offset(1, 1) = FormatDateTime(Now, vbLongTime)
If Minute(.Offset(1, 1).Value) <> Minute(.Offset(0, 1).Value) Then
.Offset(1, 2) = "Change"
.Offset(0, 3).End(xlUp).Offset(1, 0) = WorksheetFunction.Max(Range(.Offset(0, 0), .Offset(0, 2).End(xlUp).Offset(0, -2)))
End If
End With
您可以取消Generator
功能。这里不需要它。附加行将最近添加的时间戳的分钟值与前一个值进行比较,如果其不同,即分钟更改,则它标记有助于计算 E 列中的最大值的行。
推荐阅读
- python - 由 rc.local 中调用的脚本运行的 ssh 不起作用
- android - Android Firebase 存储:用户无权访问此对象
- pandas - 如何将时间序列数据集转换为熊猫数据框
- java - 从 3 个不同的单声道创建实体
- ionic-framework - 在 Ionic 4 中为 ion-button 添加 webkit-backface-visibility
- jsp - 无法包含来自应用程序外部位置的 jsp 文件
- jquery - jQuery - 从数组中获取元素并以相同的顺序输入每个连续的 td
- r - R - 根据列中的值将一列分成两部分
- swift - 在 Tabbar 项目上设置用户的个人资料图片
- java - Intellij IDEA中的步骤导航问题与黄瓜4.6.0