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

Страницы: 1
Удаление "почти пустых" строк со всех листов
 
webley, tolstak, Kuzmich, большое спасибо за помощь, не ожидала такого быстрого ответа.
Вариант Kuzmich, работает чудесно - по скорости вообще не сравнимо.
Удаление "почти пустых" строк со всех листов
 
webley, это просто таблица покрашена в один из шаблонов, сама по себе она (таблица) вообще без оформления.

Поясню как вообще так получилось: у меня довольно много листов, с которых слетела формула.
Чтобы ее вернуть на место, пришлось выделить все листы, и поправить формулу протянув вниз до +5000 строки.
Естественно, не на всех листах данные занимают 5000 строк, где-то меньше. Поэтому формула и идет подряд.
Удаление "почти пустых" строк со всех листов
 
Привет!

Есть задача: удалить остатки растянутой формулы на все листы одной книги с помощью макроса (ибо руками +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)
Видимо что-то вставляется в новые листы первым (шапка или данные) поэтому и съезжает формула.
Есть ли какой-нибудь способ это обойти?

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

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

Не совсем понимаю как фильтр по amount of points в вашем варианте оказался внутри таблицы.
Фильтр сводной таблицы по значению >=
 
Илья Демид, такой вариант отлично подходит - спасибо!
А подобное возможно делать именно через фильтры сводной таблицы? Просто интересно
Изменено: Nian - 22.06.2017 09:49:27
Фильтр сводной таблицы по значению >=
 
Да конечно, прошу прощения

Ниже код, записанный через макро рекордер.
Увы он не подходит, потому что значения каждый раз разные.
Код
Sub Test()
    ActiveSheet.PivotTables("Passes").PivotFields("Amount of Points"). _
        CurrentPage = "(All)"
    With ActiveSheet.PivotTables("Passes").PivotFields("Amount of Points" _
        )
        .PivotItems("78").Visible = False
        .PivotItems("91").Visible = False
        .PivotItems("3338").Visible = False
        .PivotItems("3497").Visible = False
    End With
End Sub
Фильтр сводной таблицы по значению >=
 
Привет!

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

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