永发信息网

关于excel的问题

答案:3  悬赏:80  手机版
解决时间 2021-11-19 15:06
  • 提问者网友:听门外雪花风
  • 2021-11-18 20:11
关于excel的问题
最佳答案
  • 五星知识达人网友:持酒劝斜阳
  • 2021-11-18 20:44
代码如下
Sub Macro1()
    Dim MyPath$, MyName$, sh As Worksheet, d As Object, arr, i&
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    Set d = CreateObject("scripting.dictionary")
    arr = Range("a1").CurrentRegion
    For i = 2 To UBound(arr)
        d(arr(i, 1)) = ""
    Next
    MyPath = ThisWorkbook.Path & ""
    MyName = Dir(MyPath & "*.xls")
    Do While MyName <> ""
        If MyName <> ThisWorkbook.Name Then
            With GetObject(MyPath & MyName)
                For Each sh In .Sheets
                    If d.Exists(sh.Name) Then sh.Delete
                Next
                Windows(.Name).Visible = True
                .Close True
            End With
        End If
        MyName = Dir
    Loop
    Application.ScreenUpdating = True
    MsgBox "ok"
End Sub
1、在工作表中填写需要删除的工作表名称;
2、把需要删除的工作簿与当前工作簿存放在同一个文件夹中;
3、不知道你的excel表的格式类型,这里用的是“.xls”;

4、可以先备份,再试试效果。
全部回答
  • 1楼网友:风格不统一
  • 2021-11-18 22:03
一定是用VBA
  • 2楼网友:撞了怀
  • 2021-11-18 21:55
您换一个思路,把需要的工作表复制(移动)为新工作簿,删除旧文件(工作簿)。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯