Страницы: 1
RSS
Добавление строк в умную таблицу
 
Добрый день!
Хочу себе облегчить жизнь в части автоматизации части процессов. Идея такова. что создать несколько умных таблиц с исходными данными на одном листе и в случае. если в таблице не будет пустой строки, чтобы она добавлялась автоматически. Макрос добавления строки у меня есть, а как добавить запуск этого макроса при отсутствии пустой строки в умной таблице - никак не могу решить. Буду благодарна за любые подсказки.
 
По какому столбцу определяете "пустоту" строки? у вас последний столбец вычисляемый, там будут стоять формулы, так?
F1 творит чудеса
 
Макрос вроде должен иметь начало и конец. Вы хотите составить таблицу постоянного мониторинга, насколько я понимаю. Тут, сдаётся мне, можно через ВПР зайти. Вот только может ли ВПР активировать макросы - не знаю. Если создать пользовательскую функцию, активирующую макрос по "пустой строке", то будет работать без проблем, но надо выделять отдельный столбец на "пустые строки"
 
Цитата
Максим Зеленский написал:
По какому столбцу определяете "пустоту" строки? у вас последний столбец вычисляемый, там будут стоять формулы, так?
ПО столбцу "наименование"
 
Цитата
Apoctol написал:
Вы хотите составить таблицу постоянного мониторинга, насколько я понимаю.
Да, в код листа прописать событие, если в таблице отсутствует пустая строка, то запуск макроса вставка строки, иначе ничего не делать
Изменено: nika_tver - 30.05.2016 10:56:10
 
nika_tver, добрый день!  :)
Насчёт вставки пустой строки ничего не понял - умная таблица САМА растягивает диапазон под новые данные (или нажать Tab в правом нижнем углу такой таблицы). Предлагаю свой метод организации учёта на основе нормализованных баз данных...
P.S.: иметь БОЛЕЕ ОДНОЙ УМНОЙ таблицы на листе - ОЧЕНЬ плохая идея. При любой возможности от этого нужно избавляться :excl:
P.S.S: смотрите, насколько "легче" стал ваш файл после очистки... Рекомендую посмотреть урок от Николая Павлова на эту тему ;)
Изменено: Jack Famous - 30.05.2016 11:09:53
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Цитата
Jack Famous написал:
умная таблица САМА растягивает диапазон под новые данные (или нажать Tab в правом нижнем углу такой таблицы)
Я знаю, а люди которые будут работать нет, чтобы ничего не сломали и хочу макрос сделать. Защита от дурака

Чем плохо несколько умных на листе? У них свои имена в макросах на них ссылка, а мне так удобнее формировать итоговую смету
 
В модуль листа - событие на изменение листа:
Код
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rRaboty, bFlag As Boolean, i&
With ActiveSheet
    bFlag = False
    rRaboty = .Range("РАБОТЫ2[РАБОТЫ]").Value
    If IsArray(rRaboty) Then
        For i = LBound(rRaboty, 1) To UBound(rRaboty, 1)
            If rRaboty(i, 1) = "" Then
                bFlag = True
                Exit For
            End If
        Next i
    ElseIf rRabouty = Empty Then bFlag = False
    End If
    If bFlag = False Then
        Application.EnableEvents = False
        .ListObjects("РАБОТЫ2").ListRows.Add
        Application.EnableEvents = True
    End If
End With
End Sub
Изменено: Максим Зеленский - 30.05.2016 11:13:36
F1 творит чудеса
 
Цитата
nika_tver написал: Защита от дурака
от них так просто не защититься))) я делаю лист с инструкцией - это спасает. Один раз составил с картинками и примерами - теперь во все шаблоны добавляю :)
Подстраиваться под "дураков" - сильно ограничить СВОИ возможности в Excel. А вот донести элементарные правила и потребовать их выполнения - дело неблагодарное, непростое, НО впоследствии, сильно облегчающее взаимодействие и скорость выполнения общего дела  ;)
Цитата
nika_tver написал: Чем плохо несколько умных на листе
как минимум тем, что вы не сможете удалить строку ЦЕЛИКОМ, если она затрагивает БОЛЕЕ 1 умной таблицы, а это бывает очень необходимо для оперативной работы. Больше сходу не скажу (не помню), но, я считаю, любой специалист (или гугл) подтвердит правильность моего совета. Кроме того, при правильной организации данных в этом нет необходимости, а в вашем случае вообще эти 3 таблички легко объединить в ОДНУ (что я и показал)  
Изменено: Jack Famous - 30.05.2016 22:07:31
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Цитата
Jack Famous написал:
при правильной организации данных в этом нет необходимости
спорно. это равносильно утверждению, что при правильной организации данных на листе в принципе не должно быть более 1 таблички, умной или не очень.
F1 творит чудеса
 
Максим Зеленский, nika_tver, мнения своего никому не навязываю.
Немного о типичных проблемах в Excel (в том числе описание обсуждаемой) - ТУТ.
Автор статьи - Денис Батьянов, тренер-консультант по Excel со своим (кстати, очень полезным) сайтом.
Изменено: Jack Famous - 30.05.2016 11:34:53
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Цитата
Максим Зеленский написал: В модуль листа - событие на изменение листа:
Спасибо большое!!! Класс!
 
Jack Famous, также не навязываю, но удобство работы аналитика (когда всё в плоских таблицах и вообще всё как в базах данных), это совсем другая история, чем удобство работы конечного пользователя. Иногда в разы удобнее иметь две и более таблиц на листе, особенно когда речь идет о таблице подстановки или наглядности для сравнений. А вот оформлять их или нет в умные - это другой вопрос.
F1 творит чудеса
 
Цитата
Jack Famous написал:  удалить строку ЦЕЛИКОМ
таблички пойдут одна под другой и будут сгруппированы, чтобы не не заполняли весь экран. сама я строю свою работу по-другому. но так как делаю для людей, которым нужна скорость и нет времени тратиться на изучение и объяснения (тем более при текучке кадров), пытаюсь выкрутиться тем, что максимально защищаю и паролю любые вмешательства от них, а весь процесс стараюсь хоть и примитивно автоматизировать
спасибо за помощь и участие
Страницы: 1
Читают тему
Наверх