Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 串在一起_Excel_Vba - Fatal编程技术网

Excel 串在一起

Excel 串在一起,excel,vba,Excel,Vba,我有下面的公式 =SUM(IF(A1<>"",VLOOKUP(J3,M3:N7,2,FALSE),0),IF(...),IF(...),...) =SUM(如果(A1“”,那么VLOOKUP(J3,M3:N7,2,FALSE),0),如果(…),如果(…),…) 有效地汇总与特定单元格(例如A1)中的字相关的VLOOKUP表中的值。目标是为包含可变字数的字符串获取一个值的总和,其中每个字都有一个特定的值。例如,一个字符串可能包含4个单词,而另一个字符串可能包含22个单词。我想找出

我有下面的公式

=SUM(IF(A1<>"",VLOOKUP(J3,M3:N7,2,FALSE),0),IF(...),IF(...),...)
=SUM(如果(A1“”,那么VLOOKUP(J3,M3:N7,2,FALSE),0),如果(…),如果(…),…)

有效地汇总与特定单元格(例如A1)中的字相关的VLOOKUP表中的值。目标是为包含可变字数的字符串获取一个值的总和,其中每个字都有一个特定的值。例如,一个字符串可能包含4个单词,而另一个字符串可能包含22个单词。我想找出一种在VBA中实现这一点的方法,这样Excel就不用编写足够多的IF()语句来说明字符串集中任何给定字符串的最大字数,而只需简单地计数,直到到达一个空单元格,对非空单元格上执行的所有VLookup的值求和,然后停止。有谁能指导我如何做到这一点吗?

与其使用大量的VLOOKUP,为什么不在sumif中使用单个数组公式呢

我创建了以下测试电子表格:

    A    B    C   D
1  xz    zt   bg
2
3  bg    12
4  xz    24
5  zt    55
为了在下表中查找A-C的值并求和它们的值,我在D列中使用了如下公式:
=sum(SUMIF($A$3:$A$5,A1:C1,$B$3:$B$5))
。确保按住ctrl+shift+enter键,使其成为一个数组公式,然后砰的一声!你完了


即使a-C列中的单元格数量可变(或无论您有多少个单元格)包含数据,这也会非常有效。。。唯一需要注意的是,它假设每个单词在查找表中只有一个条目,但我认为这是一个安全的假设。长话短说,没有必要为此而使用VBA。

与其使用大量VLookup,为什么不在sumif中使用单个数组公式

我创建了以下测试电子表格:

    A    B    C   D
1  xz    zt   bg
2
3  bg    12
4  xz    24
5  zt    55
为了在下表中查找A-C的值并求和它们的值,我在D列中使用了如下公式:
=sum(SUMIF($A$3:$A$5,A1:C1,$B$3:$B$5))
。确保按住ctrl+shift+enter键,使其成为一个数组公式,然后砰的一声!你完了


即使a-C列中的单元格数量可变(或无论您有多少个单元格)包含数据,这也会非常有效。。。唯一需要注意的是,它假设每个单词在查找表中只有一个条目,但我认为这是一个安全的假设。长话短说,没有必要为此进入VBA。

如果您输入一些示例值,甚至是电子表格,可能会让您的问题更清楚。是的,在VBA中使用while循环是可行的。“你有什么事情开始了吗?你有什么错误吗?”杰瑞为迟来的回复道歉。我将附加一个电子表格。google文档受保护…:-(仅供参考,此电子表格不是公开的……如果您输入一些示例值,甚至是电子表格,可能会让您的问题更清楚。是的,在VBA中使用while循环是可行的。您有什么开始吗,是否有错误?@Jerry对迟来的响应表示歉意。我将附加一个电子表格。google文档受保护…:-(仅供参考,此电子表格不是公开的……由于您的建议非常有效,我想我可能应该忘记谷歌电子表格。谢谢您的帮助!由于您的建议非常有效,我想我可能应该忘记谷歌电子表格。谢谢您的帮助!