【问题标题】:Excel file "NOT RESPONDING" when opened打开时 Excel 文件“无响应”
【发布时间】:2021-11-14 03:31:05
【问题描述】:

我有一个包含大约 6800 个行项目的 excel 文件,我已将图像/对象添加到每个行项目,并保存了文件。

此 excel 文件 (.xlsx) 现在大小为 17.2 MB, 我面临的问题是加载所有图像后,我无法使用该文件。请注意下面发生的一切。

  1. 文件大约需要 10 分 8 秒才能打开
  2. 对于任何进一步的操作(保存、过滤、插入新行、删除旧行、选择文件中的所有对象),文件首先进入“无响应”模式,然后进入活动状态。 (这可能需要 10 分钟到 15 分钟之间的任何时间)

如何将所有图像添加到行中?

  1. 我使用图片查找来实现这一点,并使用以下索引和匹配函数来查找每一行的图片。

    =INDEX(Sheet1!$B$2:$B$6800,MATCH(Sheet1!$A$2,Sheet2!$A$2:$A$6800,0))

  2. 我使用以下代码将图像和数据值复制到每个图像

    Sub images()
    Dim rngSel As Range
    Dim rngHdr As Range
    Dim rngCell As Range
    Dim sht As Worksheet
    Dim myshape As Shape
    
    
    
    Application.ScreenUpdating = False
    
    If TypeOf Selection Is Range Then
    Set rngHdr = Selection.Cells(1, 1)
    Set sht = rngHdr.Parent
    
    ' find shape
    For Each myshape In ActiveSheet.Shapes
           If myshape.Type = msoAutoShape Or myshape.Type = msoPicture Then
                  If Intersect(myshape.TopLeftCell, rngHdr) Is Nothing Then
                 Else
                         myshape.Copy
                         Exit For
                  End If
           End If
    Next myshape
    
    For Each rngCell In Selection.Cells
           If rngCell.Address <> rngHdr.Address Then
                  sht.Paste rngCell
                  End If
           Next rngCell
    End If
    
    Application.ScreenUpdating = True
    
    End Sub
    

需要帮助以使文件可用。

【问题讨论】:

  • Excel 不是那种让用户在几分钟内处理完全无响应的 UI 的程序。当它无论如何都发生时,你会尝试暂时禁用已安装的反恶意软件,看看是否有影响。
  • @HansPassant 错误是由于图片查找引起的,无法在文件本身中更正它,所以我不得不重建文件。感谢您的支持。

标签: excel performance delay lag


【解决方案1】:

在启动程序时按住 Ctrl 或使用命令提示符中的/safe 开关 (excel.exe /safe) 进入安全模式。单击“文件”>“选项”>“加载项”。 ...然后重新启动 Excel。

【讨论】:

  • 在安全模式下进入文件需要 9 分 48 秒。在安全模式下它仍然进入无响应模式。还有两个插件 - KUTOOLS 和 RKTOOLS 都被禁用了。
  • ,感谢您的支持,螺母错误是由于图片查找。当正在查找 6000 张图片时,prg 无法处理它。不得不重建文件。
【解决方案2】:

文件是否在网络文件夹中?尝试在本地使用它。还可以尝试将计算设置为手动:

Application.Calculation = xlManual

【讨论】:

  • 嗨@J0eBl4ck 感谢您的支持,螺母错误是由于图片查找。当正在查找 6000 张图片时,prg 无法处理它。不得不重建文件。感谢您的支持
【解决方案3】:

没有任何效果,我不得不再次重建文件。问题是由于使用此公式=INDEX(Sheet1!$B$2:$B$6800,MATCH(Sheet1!$A$2,Sheet2!$A$2:$A$6800,0)) 查找值的多张图片 没有这个文件可以正常工作。

感谢大家的支持。

【讨论】:

    猜你喜欢
    • 2012-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-23
    • 1970-01-01
    • 1970-01-01
    • 2021-06-18
    • 1970-01-01
    相关资源
    最近更新 更多