Donauwelle 发表于 2015-1-23 20:11

excel表太大,电脑运行不过来怎么办

接手的工作,前任已经不在了。发现他有个excel表格巨大,有50mb。表格本身很好,由多页组成,运用了各种公式,sverweis, wenn, verketten等等。

本来我要做的就是更新文件基础数据,把新的数据拷贝到一个页面里覆盖原数据,其余运算都在文件中的其他页进行,最后把结果拷贝出来就行。

我现在原始数据置换已经完成了,要显示结果的文件页,我用F9指令计算,电脑最多计算到20%就死机了,keine Rückmeldung, 只能把文件关掉。试了几次都这样。

公司目前用的是旧的excel, 2003好像是。

不知道前任是怎么操作的。 文件已经改成manuell berechnen 了,不然数据都拷贝不进去。文件不含macro,已经查过了。

有没有谁知道怎么处理这种大文件的?



数据减少是不可能的,因为基础数据就有40.000行。这个表格目的就是把基础数据合并到各个组织单位。

先谢谢大家。

fusion 发表于 2015-1-23 20:39

选择增大你电脑的Vitual Speicher,要不就换电脑吧

HEREAFTER 发表于 2015-1-23 21:02

有无可能分批处理原始数据?例如按月分,找到一个合理的分割点就好

Donauwelle 发表于 2015-1-23 21:02

前任用的应该是同一台电脑。我也想过申请台新的。一是时间有点紧,这个表格要马上做出来。更重要的是新电脑的运算速度够不够用,万一还不行呢。

我奇怪的是前任是怎么操作的,为什么到我这儿就不行呢。

ouyangfeifei 发表于 2015-1-23 21:05

确认没有循环套用?

chocomoo 发表于 2015-1-23 21:08

我觉得跟电脑容量没关系,50mb文件根本就不大

Donauwelle 发表于 2015-1-23 21:19

反正我以前没做过这么大的excel文件。我是一页页更新数据的,原始数据也还好,就是一个本页的内部置换。其他页因为要把基础数据重新进行合并整理,页面的每一个zelle都要计算,就死在这儿了。

多事之秋 发表于 2015-1-23 21:25

还不如设计一个小软件来计算,excel不是专门用来干这个的

ouyangfeifei 发表于 2015-1-23 22:02

Donauwelle 发表于 2015-1-23 20:02
前任用的应该是同一台电脑。我也想过申请台新的。一是时间有点紧,这个表格要马上做出来。更重要的是新电脑 ...

循环套用不知道是不是这么叫。就是一个格内的公式直接或间接引用了自身的计算结果,进入死循环。 50m的表不算大。

ouyangfeifei 发表于 2015-1-23 22:16

Zirkelbezugswarnung不一定会被看到就是了。好吧。那就不是吧。

Donauwelle 发表于 2015-1-23 22:27

另外,大家都说这个表格不算大,怎么说呢,如果是pdf文件,还好了。但是excel这样的文件,打开都好久,运算非常慢。

usstlf 发表于 2015-1-23 23:52

50m是不大,楼主就不要在文件大小上琢磨了,肯定是表格内嵌的公式有问题。

chinapope 发表于 2015-1-24 08:55

本帖最后由 chinapope 于 2015-1-24 08:01 编辑

50mb大小Excel对现代PC来说,根本就不是个事。
前人走前,留下一些使用范例或说明么,或手把手带过你么。
如果都没有,第一时间跟老板说明,首先把问题出现的Rahmenbedingung让同事们都明白。

公司的做事分清责任第一重要,技术问题可大可小,自己花在上面时间精力,要让大家都了解。

Donauwelle 发表于 2015-1-24 09:24

chinapope 发表于 2015-1-24 07:55
50mb大小Excel对现代PC来说,根本就不是个事。
前人走前,留下一些使用范例或说明么,或手把手带过你么。
...

谢谢提议。
和前任没有任何交接,这个老板也都清楚。当前重要的还是在限定时间内解决问题。老板的作风是实现目标,细节是员工自己负责。
从另一方面讲,前任留下了所有文件,一直是这么应用的。我觉得文件本身构造是很赞的,要是我重新建文档,不说完全做不到,但是肯定很费时间。所以我想问题应该在我的excel操作不够娴熟。

litstbl 发表于 2015-1-24 10:25

有个想法,不知行不行。文件复制个副本,数据删干净,就留1000个,或者留很少一部分,再算,还死的话可能是文件算法的问题了,没问题逐渐加大数据量,接着算。实在不行找台快点的电脑试。

Donauwelle 发表于 2015-1-24 10:36

litstbl 发表于 2015-1-24 09:25
有个想法,不知行不行。文件复制个副本,数据删干净,就留1000个,或者留很少一部分,再算,还死的话可能是 ...

昨天晚上拷了文件,留了30%的基础数据,文件现在大概30mb。在家里的笔记本上运行也比较慢,数据更新大概需要5分钟吧,倒是不会死机。

家里的笔记本是新买的,win8, office 2010. 目前几乎是空的,没什么内存文件。

不知道office版本影响大不大。因为公司里肯定要统一用老的版本。

litstbl 发表于 2015-1-24 10:46

跑的时候打开资源管理器看看内存使用情况吧,可能内存不够用

Unbekannt 发表于 2015-1-24 10:56

如果没记错的话, Excel 2003的最大行数为37500左右, 你的数据超过4万是肯定不行的

乐水鸣佩环 发表于 2015-1-24 11:23

你准备长期干的话,弄一个自己的版本就是了。 能用时间解决的问题在德国就不是问题。

power_min 发表于 2015-1-24 12:19

Excel 2003的最大行数为64000,相比之下2010要好很多。
Sverweis占用的资源太大,LZ可以想办法用VBA代替。
一般像这种太复杂的文件我从来不用Formel,直接用vba搞定。

power_min 发表于 2015-1-24 12:24

本帖最后由 power_min 于 2015-1-24 11:26 编辑

还有就是excel没有反应并不代表死机啦。建议LZ晚上睡觉前然他算,第二天一般就好了。个人经验...记住关掉电脑休眠功能

Switch_on 发表于 2015-1-25 18:58

在Linux下用命令分析就可以了,比excel好用多了

幽雨听弦 发表于 2015-1-26 11:23

加个内存条吧。。。。。
或者你们有cloud没,在电脑上装个虚拟机,然后虚拟机运行这个表格~虚拟机就是你们公司的服务器,比你的电脑会好很多了~~~二者大多都不是一个level的

幽雨听弦 发表于 2015-1-26 11:25

Donauwelle 发表于 2015-1-23 20:19
反正我以前没做过这么大的excel文件。我是一页页更新数据的,原始数据也还好,就是一个本页的内部置换。其 ...

或者你打开一次,然后把表下面的页数分开保存??当然前提是互相调用不会是很复杂的那种。。。

又见飞花 发表于 2015-1-26 11:47

SVERWEIS, ZÄHLENWENN...这类的特别占资源。
解决方法有几个
1。让公司根据运行这个EXCEL时内存使用情况,给你的电脑添加内存
2。复杂的公式用VBA完成,初学者可以通过录制宏来完成。
3。尽量简化公式,少用数组。
4。删除表格中不必要的格式。

Donauwelle 发表于 2015-1-26 22:40

向大家汇报一下, 联系到前任了,他是让电脑静置运算的。大概要一个多小时,比如中午休息时间。另外是把文件从公司的server上拷到电脑硬盘上,关闭其他应用。
看来是我耐心不够,电脑半天没反应就急了。

谢谢各位同学的建议。长期来看我可能还是找个解决办法,因为这个是要经常做的reporting.

幽雨听弦 发表于 2015-1-27 10:00

幽雨听弦 发表于 2015-1-26 10:23
加个内存条吧。。。。。
或者你们有cloud没,在电脑上装个虚拟机,然后虚拟机运行这个表格~虚拟机就是你们 ...

虚拟机就是virtual machine,简称VM。你可以和IT说,你们有没有CLOUD或者自己的服务器,一般公司都会有,至少是租的。服务器现在大多都是虚拟化了,就是virtualization,简单说就是在服务器上虚拟出多个小电脑,每个小电脑就是vm。你可以通过自己的电脑远程登录服务器上的小电脑~

技术上问题不大,主要是你们公司的policy。如果你们公司不允许这样做就完了。。。。那就还是扩展RAM吧

Donauwelle 发表于 2015-1-27 21:51

幽雨听弦 发表于 2015-1-27 09:00
虚拟机就是virtual machine,简称VM。你可以和IT说,你们有没有CLOUD或者自己的服务器,一般公司都会有, ...

今天找一个IT的同事问了有没有可能提高我的电脑的运算速度,他检查机子后说我的机子已经加了
SD卡,因为是xp系统,不可能再加内存,就是说加了也没用,提不了速。
是这样吗?

adgjl 发表于 2015-1-28 11:27

本帖最后由 adgjl 于 2015-1-28 10:31 编辑

一台普通新笔记本也就四五百欧,如果你不挑牌子的话。你就不能让老板换一个Win 8电脑加8G内存?这点投资对于工作效率的提高来说等于无本生意。

如果你是32位的windows xp,最大支持内存3G。不过看到你们还在使用office 2003,也够奇葩了。需要大量计算的公司使用Windows XP+Office 2003的会是什么样的公司呢?

实在不行,你让老板省顿中午饭,花40欧元去Ebay买个64位Win 7就可以加装内存了,还能免费升级Win 10,如果这台老笔记本还扛得住的话。

幽雨听弦 发表于 2015-1-28 11:35

Donauwelle 发表于 2015-1-27 20:51
今天找一个IT的同事问了有没有可能提高我的电脑的运算速度,他检查机子后说我的机子已经加了
SD卡,因为 ...

。。。。。可能是我out了,你的运算速度和SD卡有神马关系??SD卡是那种小方块的卡,内存是条状的,上面一个一个黑色方块~~~~

另外XP系统。。。大概是老本子了吧~有没有可能把excel拷贝出来拿到其他新本子上跑?要注意你们公司的保密协议
页: [1] 2
查看完整版本: excel表太大,电脑运行不过来怎么办