You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VBA复制粘贴图片代码运行时崩溃但单步执行正常的问题求助

VBA复制粘贴图片代码运行时崩溃但单步执行正常的问题求助

大家好,我碰到一个棘手的问题,想请教下各位大佬。我写的这段VBA代码原本是用来将'RefData'工作表中的图片,根据'Dashboard'工作表H列和L列的对应值,复制粘贴到'Dashboard'的指定位置。这段代码之前稳定运行了好几年,可最近一运行就直接导致Excel崩溃退出,但单步逐行执行(按F8一步步走)的时候却完全正常,我实在摸不着头绪,麻烦帮忙看看问题出在哪?

我的代码如下:

Public Sub UpdatePictures()

Dim IconRefresh As Variant

Sheets("Dashboard").Select

If ActiveSheet.Pictures.Count > 1 Then

ActiveSheet.Shapes.SelectAll
Selection.Delete
MsgBox "Pictures Deleted"

Else

MsgBox "No Pictures To Delete"

End If

Sheets("RefData").Select
ActiveSheet.Shapes.Range(Array("Common")).Select
Selection.Copy

Sheets("Dashboard").Select
For Each Cell In Range("H6:H15")
    If Cell.Value = "Common" Then
        Cell.Offset(0, 20).Select
        ActiveSheet.Paste
        Selection.ShapeRange.IncrementLeft 15
        Selection.ShapeRange.IncrementTop 3.5
    End If
Next

Sheets("RefData").Select
ActiveSheet.Shapes.Range(Array("HighSpecial(Concern)")).Select
Selection.Copy

Sheets("Dashboard").Select
For Each Cell In Range("H6:H15")
    If Cell.Value = "HighSpecial(Concern)" Then
        Cell.Offset(0, 20).Select
        ActiveSheet.Paste
        Selection.ShapeRange.IncrementLeft 15
        Selection.ShapeRange.IncrementTop 3.5
    End If
Next

Sheets("RefData").Select
ActiveSheet.Shapes.Range(Array("Pass")).Select
Selection.Copy

Sheets("Dashboard").Select
For Each Cell In Range("L6:L15")
    If Cell.Value = "Pass" Then
        Cell.Offset(0, 19).Select
        ActiveSheet.Paste
        Selection.ShapeRange.IncrementLeft 15
        Selection.ShapeRange.IncrementTop 3.5
    End If
Next

Sheets("RefData").Select
ActiveSheet.Shapes.Range(Array("Fail")).Select
Selection.Copy

Sheets("Dashboard").Select
For Each Cell In Range("L6:L15")
    If Cell.Value = "Fail" Then
        Cell.Offset(0, 19).Select
        ActiveSheet.Paste
        Selection.ShapeRange.IncrementLeft 15
        Selection.ShapeRange.IncrementTop 3.5
    End If
Next

Sheets("RefData").Select
Sheets("Dashboard").Select
Range("AA5").Select
MsgBox "Pictures Updated"

End Sub

备注:内容来源于stack exchange,提问作者ClareD

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 08:00:29