Microsoft Excel已停止工作

时间:2016-01-24 08:06:59

标签: excel vba

每当我使用箭头键向下滚动时,Excel就会停止工作:

enter image description here

我明白了:

enter image description here

1 个答案:

答案 0 :(得分:0)

要快速排除excel本身的问题,请输入运行对话框(Winkey + R) - excel /a。这启动了COM的excel,意味着没有自定义excel。你的错误现在发生吗。

获取错误详情。在设置中搜索查看问题详细信息。右键单击您的错误,然后选择查看技术详细信息。发布这些。

它看起来像这样。

Description
A problem caused this program to stop interacting with Windows.
Faulting Application Path:  C:\Program Files\Internet Explorer\iexplore.exe

Problem signature
Problem Event Name: AppHangXProcB1
Application Name:   iexplore.exe
Application Version:    11.0.10240.16412
Application Timestamp:  55b99d3f
Hang Signature: d229
Hang Type:  134742048
Waiting on Application Name:    iexplore.exe
Waiting on Application Version: 11.0.10240.16412
OS Version: 10.0.10240.2.0.0.768.101
Locale ID:  3081
Additional Hang Signature 1:    d2293b30a82e02c1d065885655e2fc11
Additional Hang Signature 2:    e68d
Additional Hang Signature 3:    e68d7530cc359e253127575d50ba30e2
Additional Hang Signature 4:    d229
Additional Hang Signature 5:    d2293b30a82e02c1d065885655e2fc11
Additional Hang Signature 6:    e68d
Additional Hang Signature 7:    e68d7530cc359e253127575d50ba30e2

解码错误

-2147220978样式号是32位有符号整数,转换为hex = 用计算器。

Windows错误(微小数字)和COM HResults(通常,但是= 在WinError.h中定义的异常,以0x80040154中的8开头) 除了8007nnnn,你在那里查找它=的Window错误号 包含。

作为一般规则,Windows错误小于65,535(0xFFFF)。错误= 从0x80000001开始是组件对象模型(COM)HResults。错误= 起始0xC0000001是NTStatus结果。从0xD0000001开始的错误是= 还有HResult中返回的NTStatus值。

NTStatus错误(通常但不总是以C开头,因为= 0xC0000022)在NTStatus.h。= 20

中定义

.h文件是最好的来源,因为它包含符号名称= 错误可以提供错误来源等线索。 = FormatMessage不仅为符号名称提供描述。

您可以通过下载Platform SDK获取这些文件(它是千兆字节) http://www.microsoft.com/en-us/download/details.aspx%3Fid%3D8279&sa=3DU&e= I =&3Dw2IrULDDLsHFmAWbmIHoBg放大器; VED = 3D0CBwQFjAA&安培; USG = 3DAFQjCNHZn9-4f2NnuN9o3UWU = sOF3wL7HBQ

如果您只想要我的skydrive上的两个文件,那么我可以= 我去的任何地方都可以参考 https://skydrive.live.com/redir?resid=3DE2F0CE17A268A4FA!121

注意互联网错误(12,000 - 12,999)是Windows错误但是= 在wininet.h中也可以在上面找到。= 20

其他.h文件中定义了错误。但99%是在三个= 上方。

HResults和NTStatus代码的结构

HResults中最重要的位,以及两个最重要的位= 在NTStatus中设置错误。因此,Hresults在错误和=时开始8 NTStatus在出错时启动C.接下来的14或15位是保留的,有些是= 指定设施 - 错误所在的区域。这是第三个和= 读取十六进制时的第四个数EG 0xnn07nnnn - HResult工具代码= 7是正常的Windows'错误(从COM程序返回 - 因此它= 作为HResult返回)。设施代码在Winerror.h中定义为= 用于NTStatus代码的HResults和NTStatus.h。他们是不同的。

解码0x8003nnnn错误

设施代码3的HResults表示HResult包含OLE Structured = 存储错误(0x0到0xff)。这些与Dos错误代码相同。 = 这些似乎不在Windows的头文件中,代码列表是= 在这篇文章的最后。

解码0x8004nnnn错误

设施代码4的HResults表示HResult包含OLE错误(0x0 = 到0x1ff),其余的范围(0x200以上)是component = 特定错误,因此来自一个组件的20e将具有不同的含义= 从另一个组件到20e。

这就是为什么错误的来源对于= =以上的错误非常重要 0x80040200。

解码0x8007nnnn错误

设施代码7的HResults意味着HResult包含Windows'= 错误代码。你必须查找Windows的错误代码而不是HResult。

解码0x80070002。 0x表示它是十六进制数,8 = 表示错误,前7表示窗口错误,其余= number,2,是实际的Windows错误。

要查找错误,我们需要十进制格式。开始计算器= (开始 - 所有程序 - 附件 - 计算器),然后选择查看菜单 - = 科学,然后查看菜单 - 十六进制。输入2.然后查看菜单 - 十进制。它= 会说2。

启动命令提示符(开始 - 所有程序 - 附件 - 命令= 提示)并输入

net helpmsg 2

它会说

系统找不到指定的文件。

或在winerror.h中查找。

  //
  // MessageId: ERROR_FILE_NOT_FOUND
  //
  // MessageText:
  //
  // The system cannot find the file specified.
  //
  #define ERROR_FILE_NOT_FOUND             2L

解码0x8019nnnn错误

设施0x19的HResults是HTTP错误。代码低于16,384(0x4000)= 与HTTP错误相同,例如HTTP状态404:请求的URL确实= 服务器上不存在0x80190194(0x194 = 3D 404)。代码16,384和= 更高的是BITS特定。

解码0xDnnnnnnn错误

从0xD开始的HResults是一个带有NTStatus值的HResult。只是= 将引导D引入C并将其视为NTStatus(Hresult = 3D NTStatus = 或者10000000)。