Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.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
Microsoft Excel 2003 | IF语句_Excel_If Statement - Fatal编程技术网

Microsoft Excel 2003 | IF语句

Microsoft Excel 2003 | IF语句,excel,if-statement,Excel,If Statement,首先,我想说的是,我对Excel的知识相当有限,而且我在不断学习,所以请随意输入/更正任何内容 我有一组信息,格式如下: 0.7 9.0 598287 0.7 10.0 598288 0.9 36.0 9186264 4.5 298.0 4071637 4.3 287.0 13896286 0.9 18.0 4011248 我需要一个公式来创建一个公式,它接受每一组数据,第一个十进制数,第二个十进制数和最后一个数字字符串。

首先,我想说的是,我对Excel的知识相当有限,而且我在不断学习,所以请随意输入/更正任何内容

我有一组信息,格式如下:

0.7 9.0 598287      
0.7 10.0 598288     
0.9 36.0 9186264        
4.5 298.0 4071637       
4.3 287.0 13896286      
0.9 18.0 4011248    
我需要一个公式来创建一个公式,它接受每一组数据,第一个十进制数,第二个十进制数和最后一个数字字符串。我已经写了一个很长很好的声明,但它并没有完全符合我的需要。我的公式和输出如下

=IF(LEN(J194)=14,RIGHT(J194,6),IF(LEN(J194)=15,RIGHT(J194,6),IF(LEN(J194)=16,RIGHT(J194,6),IF(LEN(J194)=17,RIGHT(J194,7),IF(LEN(J194)=18,RIGHT(J194,8),RIGHT(J194,8))))))

   **DATA**             **OUTPUT**       **LENGTH**

0.7 9.0 598287          598287               14
0.7 10.0 598288         598288               15
0.9 36.0 9186264        186264               16
4.5 298.0 4071637       4071637              17
4.3 287.0 13896286      13896286             18
0.9 18.0 4011248        011248               16
最后一列是字符串长度,如您所见-虽然字符串的长度相同,但由于前面的字符较短(1位、2位和3位数字),因此我得到了不同的输出

我需要公式做的是,因为我的字符串长度从14到18个字符不等,不管单元格的总长度是多少,都要取最后的数字。我还通过=CONCATENATE在每个数字的前面添加了一个E,这样我就不会计算过多

如果需要澄清,我很乐意回答任何有关我问题的问题


感谢您抽出时间阅读我的帖子

现在还不清楚你期望什么样的产出?你能举几个例子吗?当然-我需要输出数据字符串中的最后一个数字,所以数字在第二个十进制数之后。这里有一个例子:0.7 9.0 598287-->598287 0.9 18.0 4011248-->4011248等等..你能用“文本到列”功能按空格将数据拆分成列吗?能不能半解释一下?或者说明我必须做的更改?我以前从未用过FIND。啊哈!eggplant_parm对我也用了类似的伎俩。。。第二个“查找”定位第一个空间,然后向该位置添加一个空间。我们使用它作为第二个“Find”的输入来定位第二个空间的索引。然后从总长度中减去该值,即可得到所需的长度。可能需要注意的一个方面是,如果有任何行的输入值中有更多(或更少)的空格,则可能会出现错误。。。顺便说一句,我认为InstrRev是一个vba函数,而不是工作表。好吧,这不是很狡猾-感谢一吨茄子和理查德,我现在已经得到了我所需要的。再次感谢您,祝您度过一个愉快的夜晚-ColinI知道您有一个适合您的答案,但很好奇数据源是否以不同的方式导入,您是否需要按原样分隔输出列。
=RIGHT(J194,LEN(J194)-FIND(" ",J194,FIND(" ",J194)+1))