VBA - 根据不同条件计算 5 个不同细胞的差异

问题描述 投票:0回答:0

全部

我正在尝试创建一个公式,我必须在其中找到可以在解决方案中处理的剩余部分。我可以清楚地思考制定所需的逻辑,但我缺乏必要的功能知识。

例如,我这里有这张表,它显示了我在其中的某些零件的表面积 Parts Table

该解决方案允许最大处理面积为 850.5 dm²

每当我填充对应于该表的一个部分的单元格值时,最大面积应该减少,它在 SVPA 中!F6(或最后填充的行)times 同一张纸中提供的零件数量V 列的行。对于我拥有的所有部件,最大处理面积应该减少,这将告诉我该解决方案中还可以处理的内容。

例子: 如果我选择数量为 10 的 A 部分 (dm² = 6.06),则最大加工面积 = 850.5 - (6.06 x 10) -> 789.9。当最大加工零件数量 = 789.9/Part Area -> Quantity allowed

时,这将给我一些可能的加工零件

最后一件事,等式必须在每次 U 列和最后一行相同时继续进行,并在更改为新值时重置

我尝试的第一件事是 IF 函数,但它变得很大并且没有按我预期的那样工作,因为它没有在 U 列和最后一行识别我的解决方案。事情是这样的

=IF(SVPA!F10="72-53-06",SVPA!V6*$C$24,IF(SVPA!F10="72-54-08",SVPA!V6*$C$25,IF(SVPA!F10="72-54-13",SVPA!V6*$C$26,IF(SVPA!F10="72-54-01",SVPA!V6*$C$27,IF(SVPA!F10="72-54-02",SVPA!V6*$C$28,0)))))

然后我尝试使用 vlookup 来查找与所选部分对应的区域,但无法找到一种方法来识别我在 U 列的解决方案并在该单元格值发生变化时重置方程式。我相信这是正确的方法,但必须在 U 列确定解决方案并重新设置方程式

=$G$11-(VLOOKUP(SVPA!F6,Sheet1!B12:C16,2,FALSE)*SVPA!V6)

vba variables equation calculation
© www.soinside.com 2019 - 2024. All rights reserved.