Excel实例下载
  VBA  应用教程
    数据库SQL知识
设为首页
Excel打印后spoolsv.exe占CPU100%的解决方法
作者:bengdeng | 来源:Excel吧 | 时间:2009-02-07 | 阅读权限:游客 | 会员币:0 | 【

新的一年开始了,很多事情又有新的开始,我也将继续在Excel吧中分享我的Excel心得。

这不,刚刚换了一台EPSON CX5500的打印机,然后在公司是通过局域网中共享,但其它同事,利用这台打印机打印完excel文件中的资料后,发现电脑的运行速度明显变慢,我这一看,发现spoolsv.exe这个进程,经常占CPU100%。

万事不懂之时,偶等的解决方法就是搜索一下,答案基本都是一样的:

spoolsv.exe是打印缓冲,没有打印机就关掉,有的话在打印时会占用很大内存。因为要打印的文件要转化格式。
禁止Print spooler服务,如果用打印机,此方法不可行。  
  
解决办法如下:
1. 单击开始,单击运行,键入mmc,然后单击确定。 
2. 在文件菜单上,单击添加/删除管理单元。 
3. 依次单击添加、计算机管理、添加,然后单击完成。 
4. 单击关闭,然后单击确定。 
5. 依次展开计算机管理和“服务和应用程序”,然后单击服务。 
6. 右键单击 Print Spooler,然后单击停止。 
7. 单击开始,单击运行,在打开框中键入 %SystemRoot%\System32\spool\PRINTERS,然后单击确定。 
8. 删除 %SystemRoot%\System32\spool\PRINTERS 目录下的所有文件。 
9. 选择服务窗口,右键单击 Print Spooler,然后单击启动。 
10. 重新执行打印操作。 

但无奈的是,使用此招之后,问题依然。通过几天的思考与观察,发现spoolsv.exe并不是一直都是占用100%的,同事反应,在筛选数据时,最经常发生此现象。而在没有使用此网络打印机之前,不会发现此现象。于是,就让同事在使用完此打印机后,把文件默认的打印机,更改为本地打印机,如此,问题得以解决!

因此感觉这件事,其实是在打印的时候,占用的太多的内存与系统资源所至,因为excel打印完了之后,就会自做主张,自动加入分页符,而且只要页面有变动,都会进行此运算,而当类似于筛选这样的需要大量变动页面内容的操作时,excel就频繁调用打印机,这样就导致spoolsv.exe这个进程,经常占CPU100%。

最后可能有的朋友要问怎么更改文件默认的打印机呀。excel2003以下版本,在文件/打印中,选择打印机的名称为本地的打印机,后点取消即可。而excel2007在开始按钮的打印中设定。

PS:后记(09-04-09)今天才想到,既然是自动插入分页符在做怪,所以还可以取消自动插入分页符的方法来解决!手动禁用页符显示的方法为::
1、在 Excel 2003 及更早版本的 Excel 中,可以在工具 菜单上单击 选项 ,在 视图 选项卡中的 窗口选项 里,单击以清除 自动分页符 复选框即可 。 
2、在 Excel 2007 中可以单击 Microsoft Office 按钮 ,然后单击 Excel 选项 ,在 高级 分类里,清除在 此工作表的显示选项 部分下 显示分页符 复选框。
不过讨厌的是如果再打印或预览后,Excel又会自动启用这个选项!

文章录入:admin | 浏览次数:
相关评论(以下网友评论只代表其个人观点,不代表Excel吧的观点或立场)
相关信息

关于本站 | 留言本站 | 友情连接 | 后台管理
Copyright © 2005 - 2008 Excel吧 Inc. All Rights Reserved.
HxCms Ver9.0  闽ICP备06001689号
关闭此窗口