`
发表于2023/7/3 8:07:43 楼主 
头像 等级:初学者
积分:9
财富值:2.0
身份:普通用户
2023年6月24日新更新的日志表明,并没有解决这个删除对象的BUG,为更清楚说明情况,特上传一个带对象的文件,希望能在下一版本更新这个问题,谢谢!
我的个性签名
发表于 2023/7/3 8:09:37   
头像 等级:初学者
积分:9
财富值:2
身份:普通用户

详细BUG原因已在旧贴中说明:就是直接点删除对象,没有反应,全选表格之后点删除对象会将批注一起删除。

虽然用VBA可以解决问题,但用习惯了方方格子用起来比较方便,尤其是聚光灯,虽然因为使用EXCEL较简单应用并没有充值会员,但仍希望能解决这个问题。

附网上找到的VBA删除对象代码:

Sub 删除对象()
Dim sheet As Worksheet
For Each sheet In Worksheets
     sheet.DrawingObjects.Delete
Next sheet
End Sub



VBA查询对象数量代码如下:

Sub CountShapes()
  Dim n As Double
  Dim ws As Worksheet
  Dim Content As String
  For Each ws In Worksheets
  n = ws.Shapes.Count
  Content = Content & "工作表" & ws.Name & " 有" & n & " 个对象" & vbCrLf
  Next
  MsgBox Content
End Sub


以上可以正常解决问题,以下为CHATGPT生成代码,会象方方格子一样删除对象:
Sub DeleteObjects()
    '定义变量
    Dim objCount As Integer
    Dim i As Integer
    Dim response As Integer
    
    '查询对象数量
    objCount = ActiveSheet.Shapes.Count
    
    '如果没有对象,则提示无对象
    If objCount = 0 Then
        MsgBox "无对象可删除!", vbInformation
        Exit Sub
    End If
    
    '弹出确定和取消选项框
    response = MsgBox("共有 " & objCount & " 个对象,是否全部删除?", vbYesNo + vbQuestion, "删除对象")
    
    '如果选择确定,则删除对象
    If response = vbYes Then
        On Error Resume Next
        For i = objCount To 1 Step -1
            ActiveSheet.Shapes(i).Delete
        Next i
        On Error GoTo 0
        MsgBox "已删除 " & objCount & " 个对象。", vbInformation
    '如果选择取消,则退出子程序
    Else
        Exit Sub
    End If
End Sub

我的个性签名
发表于 2023/7/3 9:02:18   
头像 等级:传说级人物
积分:2228
财富值:3
身份:系统管理员
收到了,感谢你的反馈
方方格子安装教程http://www.ffcell.com/WenKu/article.aspx?id=376

快速回复

目前不允许游客发表,请 登录 注册 后再发贴。