Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Удаление "почти пустых" строк со всех листов
 
Привет!

Есть задача: удалить остатки растянутой формулы на все листы одной книги с помощью макроса (ибо руками +100 листов довольно долго).

Ниже прикладываю свое решение, однако оно ну очень медленное на больших объемах ;c
Так как кроме формулы на строке которую нужно удалить ничего нет, проверка идет по другому столбцу таблицы:
Код
Sub sample()
Dim x As Range, sh As Worksheet, i&, LastRow&

    For Each sh In ActiveWindow.SelectedSheets
        sh.Activate

            With ActiveSheet
               LastRow = .UsedRange.Rows.Count - .UsedRange.Row + 1
                  For i = LastRow To 1 Step -1
                     If Trim$(.Cells(i, "D")) = "" Then .Rows(i).Delete Shift:=xlUp
                  Next
            End With
    Next sh
End Sub
Можно ли как-нибудь ускорить выполнение скрипта? Отключение обновления экрана дает лишь небольшой прирост в скорости. Файл с примером во вложении.
Изменено: Nian - 01.08.2017 15:38:49
Слетает формула при разборе диапазонов по листам
 
Привет!

Пытаюсь разобрать данные по листам с помощью "Разобрать". Все отлично работает, однако слетает любая моя формула, которая ссылается на шапку (2 строки):
Код
=СУММПРОИЗВ(J3:AD3;$J$1:$AD$1)
, где J3:AD3 - данные из строки, $J$1:$AD$1 - соответственно данные в шапке.

Что в итоге получается:
Код
=СУММПРОИЗВ(J3:AD3;$J$3:$AD$3)
Видимо что-то вставляется в новые листы первым (шапка или данные) поэтому и съезжает формула.
Есть ли какой-нибудь способ это обойти?

Заранее спасибо!
Скрыть строку на всех листах
 
Привет!

Необходимо скрыть одну строку (первую) на всех листах, находящихся в книге. Диапазон листов указывать долго, так как их довольно много.
К сожалению, пример ниже не помог решить задачу:
Код
Sub test()
Dim sh as Worksheet
For Each Sh In ThisWorkbook.Worksheets
    Sh.Rows('1:1').EntireRow.Hidden = True
Next
End Sub
Чего-нибудь другого, подходящего под условия я не нашла.
Фильтр сводной таблицы по значению >=
 
Привет!

Пытаюсь придумать как можно отфильтровать сводную таблицу по множеству значений, попадающих под правило "больше или равно".
Вот запись зажима фильтра сводной таблицы макро рекордером:
Код
 ActiveSheet.PivotTables("Passes").PivotFields("Amount of points"). _
        CurrentPage = "3500"
Все работает прекрасно, однако в нем можно выбрать только одно значение.
Можно конечно записывать как я вручную снимаю ненужные значения, однако они каждый раз разные, поэтому этот вариант не подходит.

К сожалению, моих знаний не хватает чтобы зажать определенный диапазон значений, как >= 3500, а остальные скрыть.
Кто-нибудь может помочь?
Страницы: 1
Наверх