代码之家  ›  专栏  ›  技术社区  ›  ElectroMotiveHorse

用VBA打开Excel文件的最快方法

  •  4
  • ElectroMotiveHorse  · 技术社区  · 6 年前

    我有一个大约有7600行的电子表格,里面有很多公式。有时加载电子表格需要几分钟。有时我只想快速检查电子表格中某个项目的日期,但这需要很长时间。我创建了一个宏,可以将加载时间缩短到32秒。有没有什么方法可以使它的加载速度比我迄今为止所编码的还要快?

    Application.DisplayAlerts = False
    Application.Calculation = xlManual
    
    Workbooks.Open "foo_bar.xls", ReadOnly:=True, UpdateLinks:=False
    Windows("foo_bar.xls").Activate
    Range("A1").Select
    Selection.End(xlDown).Select
    ActiveCell.Offset(0, 1).Select
    MsgBox(ActiveCell.Value)
    
    3 回复  |  直到 6 年前
        1
  •  1
  •   ElectroMotiveHorse    6 年前

    Application.DisplayAlerts = False
    Application.Calculation = xlManual
    Application.ScreenUpdating = False
    Workbooks.Open "foo_bar.xlsx",ReadOnly:=True, UpdateLinks:=False
    
        2
  •  0
  •   Davesexcel    6 年前

    Sub GetIt()
        Dim wb As Workbook, sh As Worksheet, LstRw As Long
        Set wb = Workbooks.Open("C:\Users\dmorrison\Downloads\foo_bar.xlsx")
        With wb
            Set sh = Sheets(1)
            With sh
                LstRw = .Cells(.Rows.Count, "A").End(xlUp).Row
                MsgBox .Range("A" & LstRw).Value
            End With
            .Close
        End With
    End Sub
    
        3
  •  0
  •   ryguy72    6 年前