EXCEL 百万数据,量非常大求大神们给个公式,谢谢!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EXCEL 百万数据,量非常大求大神们给个公式,谢谢!相关的知识,希望对你有一定的参考价值。
第一个问题:execl =IF(COUNT(FIND($A1,C1)),"对","错") 如何实现当A1为10时,C1有0出现时(例如:2.0106),D1的返回值为“对”。
第二个问题:C1=A1*B1 数值如果为1.0231118007时,如何使C1的数值自动去重,变为1.02387。
第一个问题:execl =IF(COUNT(FIND($A1,C1)),"对","错") 如何实现当A1为10时,C1有0出现时(例如:2.0116),D1的返回值为“对”。
第二个问题:C1=A1*B1 数值如果乘积中有重复数值时(例如:1.0231118007),如何使C1的数值自动去重,变为1.02387,A1和B1的数值是可变的。
首先纠正一点,拼写是Excel.
我问一下:
第一个问题
公式是在D1单元格输入的吗?
A1=10,C1有0是"A1=10且C1有0"还是"A1=10或C1有0"?
例如的2.0106是A1还是C1的内容,我看不出来这个公式有什么关系?
第二个问题
C1无法对自己进行处理,这样就犯了循环引用的错误.要么在D1处理C1的数据,要么使用VBA对C1进行处理.
第一个问题(例如:2.0106)有误,改为(例如:2.016)。
第二个问题不论用公式还是VBA,要怎么实现?
抱歉昨晚下班了,你已经采纳了我就不多嘴了.第一个问题还是没看懂.
参考技术B 当A1为10时,C1有0出现时(例如:2.0106),D1的返回值为“对”。=IF(COUNT(FIND($A1,C1)),"对","错") 这个公式返回值就是“对”。
因为C1中确实含有A1追问
(例如:2.0106)有误,改为(例如:2.016)
追答=IF(A1=10,IF(COUNT(FIND(RIGHT(A1),C1)),"对","错"),IF(COUNT(FIND($A1,C1)),"对","错"))
追问可以用,非常感谢!请问第二个问题可以解决吗?
本回答被提问者采纳 参考技术CD1输入公式=IF(FIND("0",C1),"对","错")
C1输入公式:=IF(A1*B1=1.0231118007,1.02387,A1*B1)
两个问题中A1和B1都 是不定数值,也就是说C1的数值也是不定的。如何满足?
追答定不定无所谓,就这个公式就行了
参考技术D 逻辑太复杂,需要用vba处理。追问请问要怎样实现呢?
追答可以帮忙处理,这个不难的。
追问请赐教,谢谢!
Excel数据量太大,用VBA运算依然会耗时太久,运行很慢,该怎么办?
Excel中数据量有一百万+条需要计算处理,自己学习VBA后编写的公式计算,但是计算公式也非常多,可能自己学习的不精通导致编写的公式太复杂了,导致每次运行VBA程序后Excel白屏,但是从任务管理器中查看电脑并没有卡死崩溃,不过耗时几个小时后依然没有运算完成。
所以想请教,数据量这么大的Excel表格用VBA运算是否还合适呢?有没有其他的工具呢?
百度查看说用数据库处理超大量数据更合适一些,那么用Access或者SQL数据库能否完成复杂公式运算的操作呢?
这样让更多的操作在内存中进行,而不是在硬盘上进行。这中间的差异是天壤之别。我原来写的一个提取内容的sub,提取一个填写一个,总用时2分40秒。
然后我把要提取的东西全都赋值给数组,完事以后一次填写一行,或者完事后一下填写完,
结果只用了7秒。 参考技术A 把数据一次性或者分批放到数组进行运算,速度快很多。不要边读取单元格内容(数据)边进行运算,这样会很慢的。本回答被提问者采纳 参考技术B 如果擅长c#的话,可以使用多线程技术尝试一下 参考技术C 有一百万+数据确实比较多了,不过代码也可能优化,不过要几个小时也太夸张了!如果不复杂可以发来看看,如果太复杂,我也不想看了!哈哈追问
非常感谢,代码就不发了,确实非常非常复杂,因为运算的内容太多了!我自己看着都头疼。我在想,除了Excel是否可以用其它工具来计算处理呢,比如数据库?对数据库不了解所以也不懂数据库的功能如何。总之还是非常感谢你!
以上是关于EXCEL 百万数据,量非常大求大神们给个公式,谢谢!的主要内容,如果未能解决你的问题,请参考以下文章