首页 > 解决方案 > 是否可以从一个关闭的工作簿中提取或删除工作表而不打开它?

问题描述

我有两本工作簿,一本用于工作(A),另一本只有使用数据(B)。文件 B 有超过 25000 条记录,当我使用 VBA 打开它时,加载延迟很长。

我想到的一个选择是删除带有我不需要的数据的工作表,但应该在不打开 B 文件的情况下删除它们。

第二种选择是在不打开文件 B 的情况下从工作表中复制数据。

目前,我正在使用 Set wbOrigen = Workbooks.Open (FileName: = xxxxxx) 但我需要加快加载速度。

有可能做到这一点吗?

标签: excelvba

解决方案


谢谢,但我已经使用了这些声明,这不是问题。

Public Sub TLD_StartMacro()
    With Application
        .ScreenUpdating = False
        .Calculation = Excel.xlCalculationManual
        .EnableEvents = False
        ActiveSheet.DisplayPageBreaks = False
        .CutCopyMode = False
        .DisplayAlerts = False
    End With
End Sub

Public Sub TLD_EndMacro()
    
    With Application
        .DisplayAlerts = True
        .ScreenUpdating = True
        .Calculation = Excel.xlAutomatic
        .EnableEvents = True
        .CutCopyMode = False     ' Esta sentencia vacía el portapapeles
    End With
End Sub

推荐阅读