
WordPress
140
Вклад в тег
...
DoEvents
next x
...
вместо
For i = 1 To rows
arrStreet(i - 1) = Cells(i, 71)
arrHouse(i - 1) = Cells(i, 15)
arrCampus(i - 1) = Cells(i, 34)
Next i
Используем
'таким образом мы убираем цикл длиной в 180к *3 обращений к листу
' если протестировать затраты времени только на этом участке, экономия будет колоссальная
arrStreet = range(Cells(1, 71), Cells(rows, 71))
arrHouse = range(Cells(1, 15), Cells(rows, 15))
arrCampus = range(Cells(1, 34), Cells(rows, 34))
' Но т.к. теперь мы имеем 2х мерные массивы, их надо обратить в одномерные, т.к. последующий код использует одномерные.
arrStreet = WorksheetFunction.Transpose(arrStreet)
arrHouse = WorksheetFunction.Transpose(arrHouse )
arrCampus = WorksheetFunction.Transpose(arrCampus )
$cats = array(91,22)
if ( has_term($cats, 'product_cat', $product_id ) ) {
// выводим что нужно
}