纠正所有代码是不可能的,因为不清楚您要做什么。但以下内容可能会给您一个开始。
最好声明变量并指定它们的类型:
Dim i As Integer
Dim j As Integer
Dim max As Integer
Dim max1 As Integer
Dim min As Integer
Dim min1 As Integer
Dim Position As Integer
我更喜欢按字母顺序声明它们,但这不是必需的。
你需要:
min = 1000
min1 = 1000
max = 0
max1 = 0
Position = 0
中存在以下错误Set min=min1=1000, max=max1=position=0
:
- Set 仅用于对象。
- 不能用逗号分隔语句。
在某些语言中min=min1=1000
意味着min1=1000, min=min1
,但在 VBA 中,它意味着:
If min1=1000 Then
min=True
Else
min=False
End if
Do
For 语句的末尾没有。所以:
For i = 2 To 10
MIN 和 MAX 是工作表函数。要在 VBA 中使用 then 你必须说它们是工作表函数。VBA 中的语句末尾没有分号。您在 MIN 函数中使用了 j 但尚未设置其值。
我无法告诉作为 MIN 和 MAX 参数的值的位置。
如果该位置在当前工作表中,您需要以下内容:
With ActiveSheet
min = Application.WorksheetFunction.min(.Range("B16:F16"))
End With
或者可能像:
With ActiveSheet
min = Application.WorksheetFunction.min(.Range(.Cells(i,j),.Cells(i+5,j)))
End With
可以在数组上使用 MIN 和 MAX 函数,但我不知道如何选择数组的一部分。
希望这能给你一个开始。