我一直试图找到一种方法来获得一个看起来像这样的sumif公式的标准
=SUMIFS(N:N,G:G,"1670",H:H,"2016")
每个sumif都是硬编码的....所以我想要在单元格中的单元格(1670)和标准2(2016)中拉出条件1。无论是excel解决方案还是vba都很好
答案 0 :(得分:4)
使用适当版本的excel,您可以使用FORMULATEXT
函数来获取包含公式的字符串。
要从中获得标准,您必须对公式的格式做出某些假设 - 如果您知道逗号只出现在参数之间,则很容易将文本拆分为逗号并提取;但是在不同的语言环境中,您可能会发现在您期望使用逗号的地方使用分号;范围中可能有逗号;等
您需要解决方案的强大程度吗?
答案 1 :(得分:2)
从@Floris扩展答案,下面的公式给出了公式中的标准范围和标准。以下公式用于删除“= SUMIF(”&“)”
<link href="/www-coolapp/resources/css/bootstrap.min.css" rel="stylesheet">
<link href="/www-coolapp/resources/css/font-awesome.min.css" rel="stylesheet">
=SUBSTITUTE(SUBSTITUTE(FORMULATEXT(SUMIF_FORMULA),"=SUMIFS(",""),")","")
函数在公式中查找逗号的位置。获取最后一个标准需要最后一个FIND
函数。
LEN
命令用于获取2个逗号之间的文本。 MID
函数中的“+1”和“-1”用于从输出中删除逗号。由于无法识别MID
功能,无法生成Google工作表。