EXCEL中如何用公式提取单元格内的内容

我先要首先判断目标单元格是不是空的,如果是空的就不显示,如果不是空的,就显示“-”前面的内容
我的公式写的是=IF(sheet1!C5=0," ",LEFT(C5,FIND("-",C5)-1))
为什么EXCEL显示我这个是循环公式呢?请问错在哪?怎么改?

使用下列公式之一

=IF(Sheet1!C5="","",LEFT(Sheet1!C5,FIND("-",Sheet1!C5)-1))

=IF(ISBLANK(Sheet1!C5),"",LEFT(Sheet1!C5,FIND("-",Sheet1!C5)-1))

=IF(Sheet1!C5<>"",LEFT(Sheet1!C5,FIND("-",Sheet1!C5)-1),"")

=IF(NOT(ISBLANK(Sheet1!C5)),LEFT(Sheet1!C5,FIND("-",Sheet1!C5)-1),"")


温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-03-15
循环公式的原因应该是,你在当前列的c5单元格输入了你的公式。但是,在你的公式中,最终截取的信息又是c5单元格本身。而不是sheet1的c5单元格。因此,对你的公式进行了下面的修改。

=IF(sheet1!C5=0," ",LEFT(sheet1!C5,FIND("-",sheet1!C5)-1))
但是,你的原公式又和你的描述有点出入。你的描述中是判断原单元格是否为空。而你的公式中,是判断原单元格是否等于0。如果是要判断空的话,用下面的公式。
=IF(sheet1!C5=“”,"",LEFT(sheet1!C5,FIND("-",sheet1!C5)-1))
第2个回答  2013-03-15
没必要用IF判断
=LEFT(F1,FIND("-",F1&"-")-1)

循环了,说明你的公式输在了C5单元格里,或C5单元格引用了你此公式所在单元格。
第3个回答  2013-03-15
这个公式写在工作表sheet1的C5单元格,或当前工作表的C5单元格,就会造成循环引用。
因为公式中包含当前单元格。
第4个回答  2013-03-15
=IF(sheet1!C5="","",LEFT(sheet1!C5,FIND("-",sheet1!C5)-1))本回答被提问者采纳
相似回答