=SUBSTITUTE(CONCATENATE(B2:B&"+"),"+","",LEN(CONCATENATE(B2:B&"+"))-LEN("+")) 报错#NAME?
时间: 2023-07-10 07:31:25 浏览: 185
这个错误通常是因为公式中引用的函数或者参数不正确。请检查以下几点:
1. 你的Excel版本是否支持`SUBSTITUTE`和`CONCATENATE`函数,这两个函数是在Excel 2013及以上版本中才有的。
2. 公式中的单元格范围是否正确,如果引用了其他工作表中的单元格,需要在工作表名称前加上单引号,并且工作表名称中如果包含空格,需要使用单引号将其括起来。
3. 公式中的引号是否正确,需要使用英文半角引号,而不是中文全角引号或者其他符号。
根据你提供的数据,这个公式应该是:
```
=SUBSTITUTE(CONCATENATE(B2:B4&"+"),"+","",LEN(CONCATENATE(B2:B4&"+"))-LEN("+"))
```
如果你仍然遇到问题,请检查公式中是否有拼写错误或语法错误。
相关问题
=SUBSTITUTE(CONCATENATE(B2:B4&"+"),"+","",LEN(CONCATENATE(B2:B4&"+"))-LEN("+")) 这个公式要体现所有B列里B2下面的内容,不只是B2到B4,改一下公式
如果你需要从B2单元格开始,拼接所有B列中的内容,那么可以使用以下公式:
```
=SUBSTITUTE(CONCATENATE(B2:INDEX(B:B,MATCH(9.99999999999999E+307,B:B))&"+"),"+","",LEN(CONCATENATE(B2:INDEX(B:B,MATCH(9.99999999999999E+307,B:B))&"+"))-LEN("+"))
```
这个公式的含义是从B2单元格开始,将B列中所有非空单元格的内容用"+"拼接起来,并且忽略空值。其中`INDEX(B:B,MATCH(9.99999999999999E+307,B:B))`用来找到B列中最后一个非空单元格的位置,`MATCH(9.99999999999999E+307,B:B)`用来找到这个位置的行号,然后将其作为第二个参数传递给`INDEX`函数。需要注意的是,这个公式最后会多出一个"+",需要使用`SUBSTITUTE`函数将其替换掉。
最终的结果应该是:
```
DA2305220203+DA2305220201+DA2304030117+DA2304030120+DA2305110204+DA2305160249+DA2305220203+DA2305220201
```
如果你有任何问题,请随时提出。
=SUBSTITUTE(CONCATENATE('ZTE PK ORDER'!B2:B&"+"),"+","",LEN(CONCATENATE('ZTE PK ORDER'!B2:B&"+"))-LEN("+")) 这个公式报错#NAME?
这个错误通常是因为公式中引用的工作表名称不正确。请确保以下几点:
1. 工作表名称是否正确,如果工作表名称中包含空格,需要使用单引号将其括起来。
2. 如果你需要使用`LEN`函数来计算字符串长度,那么这个函数需要放在单元格范围之外,例如:
```
=SUBSTITUTE(CONCATENATE('ZTE PK ORDER'!B2:B&"+"),"+","",LEN(CONCATENATE('ZTE PK ORDER'!B2:B&"+"))-LEN("+"))
```
这个公式的意思是从'ZTE PK ORDER'表格的B2单元格开始,将B列中的所有单元格内容用"+"拼接起来,并且忽略空值。其中,第一个参数为要替换的字符串,第二个参数为用来替换的字符串,第三个参数为要进行替换的字符串。需要注意的是,这个公式最后会多出一个"+",需要使用`SUBSTITUTE`函数将其替换掉。
如果你仍然遇到问题,请检查公式中是否有拼写错误或语法错误。
阅读全文