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
Vba 计算单元格中的值数,除非为空_Vba_Excel_Excel Formula - Fatal编程技术网

Vba 计算单元格中的值数,除非为空

Vba 计算单元格中的值数,除非为空,vba,excel,excel-formula,Vba,Excel,Excel Formula,我有一个单元格,它使用一个下拉列表,可以进行多种选择。如何计算选择的数量 我用了这个: =LEN(A2)-LEN(替换为(A2,“,”)+1 但这并不能解释为空白或无选择。如果没有选择,如何显示0 如果希望公式忽略连续的逗号: =LEN(A2)-LEN(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,",,",","),",,",","),",",""))+1 它增加了一倍,以解释奇数组逗号 或者完全取消@Jeeped的所有建议,如果下拉列表中的值没有空格,更好的方法

我有一个单元格,它使用一个下拉列表,可以进行多种选择。如何计算选择的数量

我用了这个: =LEN(A2)-LEN(替换为(A2,“,”)+1

但这并不能解释为空白或无选择。如果没有选择,如何显示0


如果希望公式忽略连续的逗号:

=LEN(A2)-LEN(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,",,",","),",,",","),",",""))+1
它增加了一倍,以解释奇数组逗号


或者完全取消@Jeeped的所有建议,如果下拉列表中的值没有空格,更好的方法可能是:

=LEN(A2)-LEN(TRIM(SUBSTITUTE(SUBSTITUTE(A2,","," ")," ","")))+1

如果希望公式忽略连续的逗号:

=LEN(A2)-LEN(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,",,",","),",,",","),",",""))+1
它增加了一倍,以解释奇数组逗号


或者完全取消@Jeeped的所有建议,如果下拉列表中的值没有空格,更好的方法可能是:

=LEN(A2)-LEN(TRIM(SUBSTITUTE(SUBSTITUTE(A2,","," ")," ","")))+1

如果您的选择没有空格,则用逗号替换空格,修剪结果,然后按上面的逗号计算空格

=LEN(trim(SUBSTITUTE(A2,","," ")))-LEN(SUBSTITUTE(trim(SUBSTITUTE(A2,","," "))," ",""))+sign(len(a2))

如果您的选择没有空格,则用逗号替换空格,修剪结果,然后按上面的逗号计算空格

=LEN(trim(SUBSTITUTE(A2,","," ")))-LEN(SUBSTITUTE(trim(SUBSTITUTE(A2,","," "))," ",""))+sign(len(a2))


它计算逗号。如果你有其他方法,我会很感激任何有效的方法。老实说,我不知道你可以有一个下拉控件返回一个逗号分隔的多个选择列表。。。这是我为什么喜欢在这里帮助别人的一个好例子!。。。好的,那么您希望避免空白-这是否意味着它们将作为连续注释返回<代码>,?任何选择是否有空格?如果没有,用逗号替换空格,修剪结果,然后用逗号计算上面的空格。@jeeped他们没有空格,你能提供答案说明如何做吗?…在你的新示例中,你需要从中获得什么信息?它计算逗号。如果你有其他方法,我会很感激任何有效的方法。老实说,我不知道你可以有一个下拉控件返回一个逗号分隔的多个选择列表。。。这是我为什么喜欢在这里帮助别人的一个好例子!。。。好的,那么您希望避免空白-这是否意味着它们将作为连续注释返回<代码>,?任何选择是否有空格?如果没有,请用逗号替换空格,修剪结果,然后用逗号计算上面的空格。@如果他们没有空格,请提供如何处理的答案?…对于您的新示例,您需要从中获得什么信息?这不起作用。当没有值时,+1就是问题所在。这有点像猜测。你能分享一下你的数据样本吗,有没有这些空白?@Jeeped-看看我在那里做了什么,Jack all-我觉得我很漂亮。床类型|全床王,皇后| 2 | 0双人床| 1王,皇后,双人床| 3没有空白?也许我不明白你的问题这不管用。当没有值时,+1就是问题所在。这有点像猜测。你能分享一下你的数据样本吗,有没有这些空白?@Jeeped-看看我在那里做了什么,Jack all-我觉得我很漂亮。床类型|全床王,皇后| 2 | 0双人床| 1王,皇后,双人床| 3没有空白?也许我不明白你的问题(甚至更好:)+1@guybrianadams-这是一个相当容易的解决办法;也许你本可以做些什么。甚至更好:)+1@guybrianadams-这是一个相当容易的解决办法;也许你本可以做些什么。