Я генерирую новые листы, используя макросы.Для создания нового листа данные извлекаются из более чем 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
Заранее спасибо