execl 如何判断单元格内容的连续性

前几天有学员问了一个问题如果他的单元格中包含某些字符,那么在最后一列中就显示有用否则显示不可用。如下:

当含有carpet时最后一列中显示有用。

其实这个函數非常简单,既然是查找某个字符直接用FIND函数就可以了,然后搭配着IF函数进行判断结果不就出来了么?

有了这个思路来看一下另外┅个同学碰到的问题,看看该如何解决表格是这样的:

她的问题是这样的:如果有4个连续的衣服码都有库存,那么就在最后一列中标注為齐码否则就为断码。比如第2行中的T101031根据上述说明,结果应该是断码;第3行中的结果就是齐码;

先来分析一下思路这个题跟开始的那个有点不一样,应该可以说是升级版

怎么去判断是连续的呢?我们用1表示有用0表示无,假设将一行中的码数全部连接在一起只要遇到了“1111”这种四个1在一起的,那么不就是说明这件款式是齐码的么!

根据上述这个思路得出:

1、先判断库存情况,大于0的转换成10的保持不变;

2、将1中的判断情况连接在一起成为文本串;

3、判断有没有“1111”这种情况;

4、根据第3条得出是否是断码或齐码的结果

一起来分步驟写一下公式:

转换为1和0,肯定是IF函数了:

这个利用了数组公式的特性所以得出的结果是一组数据:

将这些结果连成一串的函数就比较哆了,都分享一下吧:

第一个参数是分隔符的意思第二个参数是是否忽略空值,第三个参数自然就是要连接的文本了;

如果不是上述这些版本怎么办接下来看:

参数虽然比Textjoin简单得多,但是如果之间要有连接符的话还是得用Textjoin。

其实关于连接文本的函数除了上述两个之外,还有Phonetic函数它只对文本起作用;Concatenate函数,还有&符号只是由于本题的限制,这三个都用不上大家作为了解就好。

接下来就是判断是否有连续的库存了。这个直接用FIND函数搞定

这种结果说明没找到,把公式下拉填充一下看看

很明显,能得到结果的就表示有连续的4个1,结果就应该是齐码但是这里直接嵌套IF函数并不能得到我们要的结果,因为IF的判断条件值的结果应该是True或False所以这一步还需要套一个函數ISERROR直接做判断:

有了结果True和False,最后再用IF函数嵌套就简单多了

好了,如果你有更好的方法请留言分享给大家,一起交流

更多关于Excel基础技巧课程,欢迎点击:

我要回帖

 

随机推荐