как ускорить макросы VBA

Я генерирую новые листы, используя макросы. Для создания нового листа данные извлекаются из более чем 4 БД MS Access. Каждая БД имела минимум 200 полей. Мой код макроса включает

  1. Cell locking
  2. Alignment and formatting
  3. One third of the cells in the sheet had a formulas
  4. Cell reference with other Workbooks

Моя проблема в том, что для каждого поколения листов требуется минимум один час, чтобы завершить процесс сверления. Но мне кажется, это занимает слишком много времени.

Я уже добавилApplication.ScreenUpdating = True чтобы ускорить код, но все же это занимает то же время. Как сделать ускорить код, если у вас есть идеи, пожалуйста, направьте меня.

     `For Ip = 5 To  150
     resp = Range("B" & Ip).Value
     With ActiveSheet.QueryTables.Add(Connection:= _
    "ODBC;DSN=henkel2;DBQ=C:\Hl-RF\RSF-Temp.mdb;DriverId=25;FIL=MS Access;MaxBufferSize=2048;" _
    , Destination:=Range("IV4"))
    .CommandText = "select Vles from " & Shtname & " where cint(PrductID)='" & resp & "' and cint(DepotID) = '" & cnt1 & "' and Mnth = '" & mnths & "' and Type='" & typs & "'"
    .Name = "tab product"
    .FieldNames = True
    .RowNumbers = False
    .FillAdjacentFormulas = False
    .PreserveFormatting = True
    .RefreshOnFileOpen = False
    .BackgroundQuery = True
    .RefreshStyle = xlInsertDeleteCells
    .SavePassword = False
    .SaveData = True
    .AdjustColumnWidth = True
    .RefreshPeriod = 0
    .PreserveColumnInfo = True
    .SourceConnectionFile = _
    "C:\Hl-RF\tabct.odc"
    .Refresh BackgroundQuery:=False
    End With`


    Is There Is any way to Reduce the loop iteration time

Заранее спасибо

Ответы на вопрос(7)

Ваш ответ на вопрос