删除Excel工作表(如果不在数组中)

路易斯·沃恩(Luiz Vaughan)

我在解决错误“时间执行错误#13:类型不兼容”时遇到问题。如果用户创建了一些未在数组中声明的工作表,则该工作表将被删除。有人可以帮忙吗?

sub DeleteNewSheets()

Dim ws, wsP As Worksheet
Dim ArrayOne As Variant

    Application.DisplayAlerts = False

    ArrayOne = Array("SheetA", "SheetB", "SheetC", "Sheet_n")


    Set wsP = ThisWorkbook.Worksheets(ArrayOne) ' <--- ERROR #13

    For Each ws In ThisWorkbook.Worksheets
        If ws.Name <> wsP.Name Then ws.Delete
    Next ws

    Application.DisplayAlerts = True

end sub
YowE3K

您的代码行说:

Set wsP = ThisWorkbook.Worksheets(ArrayOne)

试图将一个工作表对象设置为包含多个工作表的数组。这就像试图将单个Integer设置为Integer的数组一样。

尝试使用以下代码

Sub DeleteNewSheets()

    Dim ws As Worksheet
    Dim ArrayOne() As Variant
    Dim wsName As Variant
    Dim Matched As Boolean

    ArrayOne = Array("SheetA", "SheetB", "SheetC", "Sheet_n")

    Application.DisplayAlerts = False

    For Each ws In ThisWorkbook.Worksheets
        Matched = False
        For Each wsName In ArrayOne
            If wsName = ws.Name Then
                Matched = True
                Exit For
            End If
        Next
        If Not Matched Then
            ws.Delete
        End If
    Next ws

    Application.DisplayAlerts = True

End Sub

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

coffeescript检查是否不在数组中

来自分类Dev

str_replace删除不在数组中的任何字符

来自分类Dev

Codeigniter活动记录-删除不在数组中的位置

来自分类Dev

如果不在数组中-> array.push

来自分类Dev

如何从EPPLUS中的Excel工作表中删除列

来自分类Dev

Laravel:删除所有不在数组中的记录

来自分类Dev

如果工作表的名称属于数组,则将其删除

来自分类Dev

内容在打印中工作正常,但不在数组中

来自分类Dev

C#如果项目不在数组中

来自分类Dev

Rails不在数组中

来自分类Dev

AWK-如果不在数组中

来自分类Dev

在Tableau中,是否有一种类似于Excel的隐藏/取消隐藏数据列的方法?不在数据源中,而是在实际的工作表中?

来自分类Dev

在Javascript中,从不在数组中的对象中删除键

来自分类Dev

如果数据不在Mongodb中的数组中,如何删除

来自分类Dev

如果表不在Excel VBA的Access数据库中

来自分类Dev

在Excel中的提示下删除工作表

来自分类Dev

str_replace删除不在数组中的任何字符

来自分类Dev

Codeigniter活动记录-删除不在数组中的位置

来自分类Dev

在Excel中删除工作表

来自分类Dev

如何使用数组在数组中添加新值并删除(如果存在)?

来自分类Dev

如何检查字符串是否包含存储在数组中的字符,但是如果字符串包含不在数组中的任何字符,则返回false

来自分类Dev

如果不在数字之间,请删除冒号

来自分类Dev

C ++二进制搜索无法正常工作-查找元素不在数组中

来自分类Dev

如果值可能不在数组中,如何编写二进制搜索方法

来自分类Dev

如果关联值不在数组中,PHP如何回显某些结果?

来自分类Dev

如何从 UFT 中删除 Excel 工作表

来自分类Dev

如何匹配数组并显示不在数组中的数组?

来自分类Dev

*ng如果不在离子 3 中工作

来自分类Dev

角材料数据表复选框在全选或选择单个项目时将值保留在数组中,如果取消选择则删除

Related 相关文章

  1. 1

    coffeescript检查是否不在数组中

  2. 2

    str_replace删除不在数组中的任何字符

  3. 3

    Codeigniter活动记录-删除不在数组中的位置

  4. 4

    如果不在数组中-> array.push

  5. 5

    如何从EPPLUS中的Excel工作表中删除列

  6. 6

    Laravel:删除所有不在数组中的记录

  7. 7

    如果工作表的名称属于数组,则将其删除

  8. 8

    内容在打印中工作正常,但不在数组中

  9. 9

    C#如果项目不在数组中

  10. 10

    Rails不在数组中

  11. 11

    AWK-如果不在数组中

  12. 12

    在Tableau中,是否有一种类似于Excel的隐藏/取消隐藏数据列的方法?不在数据源中,而是在实际的工作表中?

  13. 13

    在Javascript中,从不在数组中的对象中删除键

  14. 14

    如果数据不在Mongodb中的数组中,如何删除

  15. 15

    如果表不在Excel VBA的Access数据库中

  16. 16

    在Excel中的提示下删除工作表

  17. 17

    str_replace删除不在数组中的任何字符

  18. 18

    Codeigniter活动记录-删除不在数组中的位置

  19. 19

    在Excel中删除工作表

  20. 20

    如何使用数组在数组中添加新值并删除(如果存在)?

  21. 21

    如何检查字符串是否包含存储在数组中的字符,但是如果字符串包含不在数组中的任何字符,则返回false

  22. 22

    如果不在数字之间,请删除冒号

  23. 23

    C ++二进制搜索无法正常工作-查找元素不在数组中

  24. 24

    如果值可能不在数组中,如何编写二进制搜索方法

  25. 25

    如果关联值不在数组中,PHP如何回显某些结果?

  26. 26

    如何从 UFT 中删除 Excel 工作表

  27. 27

    如何匹配数组并显示不在数组中的数组?

  28. 28

    *ng如果不在离子 3 中工作

  29. 29

    角材料数据表复选框在全选或选择单个项目时将值保留在数组中,如果取消选择则删除

热门标签

归档