【发布时间】:2015-08-31 00:43:02
【问题描述】:
作为VBA(Excel)的新手,我正在尝试制作一个工具,它可以确定某个测试的诊断率必须是多少;为了具有成本效益,作为另一项诊断测试的预筛选。
我想要它做的是计算测试 A 的某个产量,测试 B 的产量是多少,两次测试的每次诊断成本相同。我编写的代码必须循环一定范围的诊断收益率,并在测试 A 的每次诊断成本低于测试 B 的每次诊断成本时退出此循环。
但是,代码一直在这个范围内循环,但在满足我的成本条件时不会停止。我尝试了很多,包括 do while 和 do until 语句,但它不起作用。我真的希望有人能帮助我!提前谢谢了!克尔斯滕
Sub TGP_WES_OR_WES()
Dim Yield_A As Double
Dim Yield_B As Double
Dim Yield_A_max As Double
Dim Cost_diagnosis_A As Double
Dim Cost_diagnosis_B As Double
Yield_B = Range("C6")
Yield_A_Max = Yield_B - 0.1
Cost_diagnosis_B = Range("E15")
Cost_diagnosis_A = Range("E11")
Do While Yield_A < Yield_A_max
For Yield_A = 1 To Yield_A_max Step 0.1
Range("C5").Value = Yield_A
If Cost_diagnosis_A < Cost_diagnosis_B Then
Exit For
End If
Next Yield_TGP
Loop
Range("D1").Value = Yield_TGP
End Sub
【问题讨论】:
标签: vba excel loops multiple-conditions