0
这是我的代码,但它似乎并没有工作。我不知道为什么......如何在VBA中编写最大功能?
Function maximum()
Dim i As Integer
Dim dernLigne As Long
Dim somme as Variant
somme = 0
lastLigne = Range("C65536").End(xlUp).Row
Range("C65536").Value = valuemax
i = 2
While i <= lastLigne
If Range("C" & i).Value > valeurmax Then
valuemax = Range("C" & i).Value
i = i + 1
End If
Wend
maximum = valeurmax
End Function
感谢
您有一个错字。在两个地方,你使用的是'valeurmax',而另外一些则使用'valuemax'。和这行'Range(“C65536”)。Value = valuemax'将不起作用,如果你从工作表中调用这个函数。同样它也会一直是'0',因为那时'valuemax'就是一无所有。 –
为什么不使用'Application.WorksheetFunction.Max()'? (如果你从工作表中调用它,或者只是'Max()'本身)。 –
UDF无法写入工作表;例如'Range(“C65536”)。Value = valuemax'。在@JohnColeman建议的工作表上使用Application.Max(...)或MAX(...)。 – Jeeped