Excel 使用VBA中的函数驱动多个输出
在函数中调用单元格(x,y)时,VB不会执行代码 大家好, 我是VBA新手,正在寻求帮助。我正在编写一个函数来驱动输出。但是,我还希望根据一组特定的条件为不同的行分配值。我在函数中使用单元格(I,2).value为不同的行赋值。但是,VBA不会在函数内执行单元格(i,2)。它只是终止并给出“#VALUE!”作为输出 我们将非常感谢您为解决此问题提供的任何帮助 谢谢Excel 使用VBA中的函数驱动多个输出,excel,vba,Excel,Vba,在函数中调用单元格(x,y)时,VB不会执行代码 大家好, 我是VBA新手,正在寻求帮助。我正在编写一个函数来驱动输出。但是,我还希望根据一组特定的条件为不同的行分配值。我在函数中使用单元格(I,2).value为不同的行赋值。但是,VBA不会在函数内执行单元格(i,2)。它只是终止并给出“#VALUE!”作为输出 我们将非常感谢您为解决此问题提供的任何帮助 谢谢 Function FindKP(Time, Curr_SP, IAC, Current, KInt, Output) Dim K A
Function FindKP(Time, Curr_SP, IAC, Current, KInt, Output)
Dim K As Integer
For K = 1 To 200 Step 1
For i = 7 To 40005
If (Time(i) <> Time(i - 1)) Then
cells(i, 2) = (Curr_SP / IAC - Current(i - 1) / IAC) * K * 0.0005
Else
cells(i, 2) = Output(i - 1)
End If
Next i
P = 0
For i = 7 To 40005
If (Output(i) > Output(i - 1)) And Output(i) > (Curr_SP / IAC) Then
Curr_Max = Output(i)
P = 1
End If
If (P = 1) And (Output(i) < Output(i - 1)) Then
Curr_Min = Output(i)
End If
Next
If (Curr_Max < 1.1 * Curr_SP And Curr_Min > 0.9 * Curr_SP) Then
FindKP = K
End If
Next
End Function
函数FindKP(时间、电流、怠速、电流、电流、输出)
将K变为整数
对于K=1到200,步骤1
对于i=7到40005
如果(时间(i)时间(i-1))那么
单元(i,2)=(电流SP/IAC-电流(i-1)/IAC)*K*0.0005
其他的
单元(i,2)=输出(i-1)
如果结束
接下来我
P=0
对于i=7到40005
如果(输出(i)>输出(i-1))和输出(i)>(电流SP/IAC),则
电流最大值=输出(i)
P=1
如果结束
如果(P=1)和(输出(i)<输出(i-1)),那么
电流最小=输出(i)
如果结束
下一个
如果(当前最大值<1.1*当前值,当前最小值>0.9*当前值),则
FindKP=K
如果结束
下一个
端函数
从工作表调用的函数不能更改调用它的单元格以外的其他单元格的值。欢迎使用。将函数转换为正常的Sub
过程。