excel表格里 我用IF公式但是连续用八个以上它就提示共识错误,八个以下就没事,怎么办啊 求助大神啊
一般来说,需要优化你的公式
可能的方案有?
如果IF里有相同的返回结果的(或者可以用一个公式计算出来的),用OR()合并条件
用LOOKUP或VLOOKUP将条件数组化
用CHOOSE选择
将条件表格化,同样利用LOOKUP或VLOOKUP在表格中查询得到结果
具体的,就看你的条件适合怎样的方式了
我是有二十多个项要用IF表示 就是IF(B1=“水”,“001”IF(B1=“冰”,“002”,IF(B1=“气”,“003”)))这样有二十几个要做出来
追答好办,把所有情况写出来,可以用lookup,我帮你写公式
你也可以,把剩余情况写全,文字、数字要加半角英文双引号引上,逗号隔开。
=LOOKUP(B1,{"水","冰"},{"001","002"})
双引号,逗号要用英文(半角),中文的公式不认。
追问谢谢了
亲你真逗,这让我咋写公式,把公式里的文字粘来,不要截图。
如果不让粘,私信我
这个可以考虑建一个辅助表,把数据放A,B列,然后用vlookup()引用。那个表可以随时修改,别的表跟着自动变。平时辅助表可以隐藏。
看来你电不熟了,我看图写话吧,等会
只写了几个,依你水平,能写完。
=LOOKUP(D10,{"伊利莎白小青猪眨眼面膜","伊利莎白小黑猪眨眼面膜"},{"H3021","H3022"})
=LOOKUP(D10,{"伊利莎白小青猪睡眠面膜","伊利莎白小黑猪睡眠面膜"},{"H3021","H3022"})
追问我是进去了 为什么里面有点错乱似的
追答能加辅助列或表吗,辅助表可以隐藏
追问怎么加?我的是WPS金山的 ,刚才我全部输进去了但是不怎么对称啊 就是我换好几个名字但是编码都是一样的不变
追答lookup()有个缺点,是要数据升序排列,不然就把这些品名排一下序,再放入公式。
不然就放辅助表里,用vlookup()引用
把公式文字拷来我试试
我上电脑试试
追问意思就是我在每个名字前加上1,2,3排序然后变好也按照1,2,3的顺序排?
我电脑不能提问了 我现在用的手机 给我个邮箱吧
追答扣759534733
那怎么办?
不管什么办法 我这里一共有二十几个项要用怎么办啊?有没有其他的?
追答换别的函数,或者想简单点的算法,或者用VBA。
你发个截图什么的。
我的都是汉子 二十几个项对应着二十几个数字
追答那你用VBA吧。那里边没有限制。
追问怎么用啊,IF(B1=“水”,“shuui”,IF(B1=“冰”,“bing”))比如这个公式用VBA怎么表示?
追答Sub test()
If Range("B1") = "水" Then
Range("C1") = "shui"
ElseIf Range("B1") = "冰" Then
Range("C1") = "Bing"
End If
End Sub
这只是一个过程,你的应该做成一个函数好点。你截个图,好看看你的具体情况。
你的意思是做几个特别小的列 然后分掉一部分?