首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >=IF(ISNUMBER(搜索))1与11的区别

=IF(ISNUMBER(搜索))1与11的区别
EN

Stack Overflow用户
提问于 2013-09-24 13:52:48
回答 4查看 22.9K关注 0票数 1

我试图根据内容将excel中的一列数字转换为多列。

例如,表1包含1列,其中包含1到11之间的1或更多数字,用逗号分隔。表2应包含11列,其1或0取决于表1中的数字。

我现时所用的公式如下:

代码语言:javascript
运行
复制
 =IF(ISNUMBER(SEARCH("1",A2)),1,0)

下一列包含以下内容:

代码语言:javascript
运行
复制
 =IF(ISNUMBER(SEARCH("2",A2)),1,0)

一直到11岁

代码语言:javascript
运行
复制
 =IF(ISNUMBER(SEARCH("11",A2)),1,0)

但是,这方面的问题是,查找对1的引用的代码也可以找到对11的引用。是否可以编写一个公式,以便在表1中显示以下内容:

代码语言:javascript
运行
复制
 2, 5, 11

它没有把1放在表2的第1栏吗?

谢谢。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-09-24 13:59:50

对于只有逗号的列表,请使用:

代码语言:javascript
运行
复制
=IF(ISNUMBER(SEARCH(",1,", ","&A2&",")),1,0)

如果list与, (comma+space)分隔:

代码语言:javascript
运行
复制
=IF(ISNUMBER(SEARCH(", 1,", ", "&A2&",")),1,0)
票数 5
EN

Stack Overflow用户

发布于 2013-09-24 14:18:41

在每个逗号之前或之后处理0..n个空格的LS_dev答案的一个版本是:

代码语言:javascript
运行
复制
=IF(ISNUMBER(SEARCH(", 1 ,",", "&TRIM(SUBSTITUTE(A2,","," , "))&" ,")),1,0)

替换确保每个逗号前后始终至少有一个空格,而TRIM用一个空格替换多个空格,因此TRIM函数的结果将在每个逗号前后正好有一个空格。

票数 2
EN

Stack Overflow用户

发布于 2013-09-24 14:03:10

在进行搜索之前,使用SUBSTITUTE函数将所有"11“更改为罗马数字"XI”如何:

代码语言:javascript
运行
复制
=IF(ISNUMBER(SEARCH("1",SUBSTITUTE(A2, "11", "XI"))),1,0)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18983582

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档