VBAmacrosExcel
我在Excel中创build一个程序,获取最高和最低的数字。 我得到最高的数字,但最低的数字始终保持在0.请帮助我,我做错了什么。 这是我正在使用的数字的屏幕截图:
这是我创build的代码:
Sub Code() Dim i As Integer Dim max, min As Long For i = 1 To 10 If Cells(i, 1).Value < min Then min = Cells(i, 1).Value End If If Cells(i, 1).Value > max Then max = Cells(i, 1).Value End If Next i Cells(3, 4).Value = min Cells(4, 4).Value = max End Sub
声明min
variables的默认值为0。 因此,由于您的值都不是负数,所以min
variables将保持为零(所有值都不会小于它)。 下面的If...Then
语句永远不会是真的:
If Cells(i, 1).Value < min Then min = Cells(i, 1).Value End If
你有两个select来解决这个问题:
- 初始化该variables为一个高数字,如999
- 读入第一个单元格中的值并将其设置为min的起始点
替代scheme:
max = WorksheetFunction.max(Range("A1:A10")) min = WorksheetFunction.min(Range("A1:A10"))