nhztb 发表于 2014-12-3 18:57:40

EXCEL函数字符串(带”-“号和小数点)转数字问题请教

平安银行的帐目没有分支出和进帐只有一个交易金额,现在想用EXCEL增加支出,进帐两项,搞了半天没有整成。
需求高手帮忙解决。
=IF(FIND("-",#REF!,1),VALUE(#REF!),"" )       SUBSTITUTE()一共用这几个函数,总是不成功。

支出                进帐                交易金额
#REF!        #REF!        -12,381.74 
#REF!        #REF!        -49,950.00 

nhztb 发表于 2014-12-3 21:24:55

终于搞定
主要是发现了这个函数IsError   因为FIND函数未到时返回#VALUE

支出=IF(ISERROR(FIND("-",F3,1)),"",(SUBSTITUTE(SUBSTITUTE(F3,",",""),"-","")))
进帐=IF(ISERROR(FIND("-",F3,1)),(SUBSTITUTE(SUBSTITUTE(F3,",",""),"-","")),"")


tingfenghu 发表于 2014-12-3 19:11:33

=SUBSTTTUTE(MID(A1,FIND("-",A1),99),"-",,1)
百度来的。

hxdma 发表于 2014-12-3 19:14:56

进账    =IF(C1>0,C1," ")
出账    =IF(C1<0,C1," ")

hxdma 发表于 2014-12-3 19:17:24

如果想去掉负号那就 -C1 或者ABS(C1)

nhztb 发表于 2014-12-3 19:51:27

本帖最后由 nhztb 于 2014-12-3 19:53 编辑

hxdma 发表于 2014-12-3 19:14
进账    =IF(C1>0,C1," ")
出账    =IF(C1

支出        进帐                         交易金额
        -12,381.74         -12,381.74 

用你这个公式,还是不行,这里进帐应该是0才对。

nhztb 发表于 2014-12-3 19:54:54

=IF(FIND("-",#REF!,1),VALUE(SUBSTITUTE(#REF!,"-",""))," " )
这个是我自己写的公式,总是显示#VALUE

wangjiati 发表于 2014-12-3 20:30:18

交易金额字段 不用文本格式,转为数字。然后公式就简单了。

TANK99 发表于 2014-12-3 21:41:16

格式好的字串想速快转换为数字,字串乘1就自动转了。

hxdma 发表于 2014-12-4 18:38:06

nhztb 发表于 2014-12-3 19:51
支出        进帐                         交易金额
        -12,381.74         -12,381.74 



如果你的表格是文本,转换一下就好了
或者改一下函数
进账    =IF(value(C1)>0,value(C1)," ")
出账    =IF(value(C1)<0,value(C1)," ")

hxdma 发表于 2014-12-4 18:38:37

楼上说的 用C1*1替换也可以,更简单
页: [1]
查看完整版本: EXCEL函数字符串(带”-“号和小数点)转数字问题请教