首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >检查多个条件并根据结果执行数学运算

检查多个条件并根据结果执行数学运算
EN

Stack Overflow用户
提问于 2022-06-16 00:33:08
回答 1查看 67关注 0票数 0

我有一个1000行的电子表格。每行有六个不同权重的列类别(30%、20%、20%、10%、15%、5%),得分为1,2,3,4,5或N/A,然后是一个评分,编制了总分,因此第一行为5*3、2*2、1*1、1*.15、5*.05,共计2.4。如果一列有N/A,我想重新分配值。因此,如果第一列(价值30% )具有N/A,我希望新的其余5个值值为26%、26%、16%、21%、11% (是的,我希望每个列都添加6%,而不是根据当前权重重新分配30% )。如何使用VBA代码完成此操作?如果两列都有N/A,那么我将把这两列的总重量分配给其他四列,以此类推。有60个组合,我不介意只使用60个if -然后-else语句。如何定义字段并确保所有1000行的公式都是动态的?我正在努力编写公式/定义元素,以使其具有动态性。谢谢!

代码语言:javascript
运行
复制
Option Explicit
Function New_Score()
End Function
Sub TestSum()
   If Range("AD2").Value = "N/A" And Range("AF2").Value = 2 Then
   Range("AJ2").Value = (Range("AF2").Value * 0.3) + (Range("AH2").Value * 0.2)
   End If
   If ActiveCell.Offset(0, -2).Value = "N/A" And ActiveCell.Offset(0, -1).Value = 5 Then
   ActiveCell.Value = (ActiveCell.Offset(0, -3).Value * 0.3) + (ActiveCell.Offset(0, -1).Value * 0.2)
   End If
End Sub

这是相同的尝试两次-首先对范围参考,然后与偏移参考。很好,但如果我拖动细胞就不行了。我如何动态地引用它?谢谢!

EN

回答 1

Stack Overflow用户

发布于 2022-06-16 01:07:40

正如braX所提到的,请分享您的代码和它的问题。

此外,还应该可以用附加支撑柱的单元函数来解决计算问题,例如:

values

  • Multiply
  • 计算所有NA细胞
  • 的百分比之和,除以非NA
  • 的细胞数,将此值相加到每个“基本”百分比
  • 中,并包含相关因素(与NA=0)

您也可以将其放入目标列中的一个公式中,而不是多个附加列。

编辑:此计算为每行

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72639211

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档