Excel при добавлении строки автоматически формула

Определяем положение последнего числа в столбце:

=СУММ(C3:ИНДЕКС(C:C;ПРОСМОТР(9E+307;C3:C1000;СТРОКА(C3:C1000))))

Сложно…

Один из недостатков суммирования в диапазоне, заданном с запасом — при удалении строк диапазон суммирования уменьшается и возможен случай, когда в сумму будут попадать не все значения.

Можно задать статичный диапазон, на который не влияет добавление/удаление строк:

=СУММ(C3:ИНДЕКС(C:C;1000)

Но такой вариант не избавляет от лишних вычислений в пустых строках.

Функция СУММЕСЛИ умеет определять используемый диапазон, поэтому просматривать будет ровно столько строк, сколько нужно:

=СУММЕСЛИ(C:C;">0")

Или по значению другого столбца:

 =СУММЕСЛИ(B:B;"модуль1";C:C)

Важно: такая формула должна быть записана не в столбце суммирования.

Если условия суммирования добавляются (например, значение других столбцов, диапазон дат…), можно использовать более продвнутую сестричку — СУММЕСЛИМН

Когда вы вставляете пустые строки между существующими строками данных, формула не будет копироваться и вставляться в новую строку, вам следует перетащить или заполнить ее вручную. Но иногда вы хотите заполнить формулу, когда вы автоматически вставляете пустые строки между диапазоном данных, как показано на следующем снимке экрана, в этой статье я расскажу о некоторых быстрых приемах для решения этой задачи.

формула автозаполнения документа вставка строки 1

Формула автозаполнения при вставке пустых строк при создании таблицы

Формула автозаполнения при вставке пустых строк с кодом VBA


Формула автозаполнения при вставке пустых строк при создании таблицы

В Excel формат таблицы может помочь вам автоматически заполнить приведенную выше формулу в новые вставленные пустые строки, пожалуйста, сделайте следующее:

1. Выберите диапазон данных, в котором вы хотите автоматически заполнить формулу, а затем щелкните Вставить > Настольные, см. снимок экрана:

формула автозаполнения документа вставка строки 2

2. В Создать таблицу диалог, проверьте В моей таблице есть заголовки если в ваших данных есть заголовки, см. снимок экрана:

формула автозаполнения документа вставка строки 3

3. Затем нажмите OK и таблица была создана, и теперь, когда вы вставляете пустую строку, приведенная выше формула будет автоматически вставлена ​​в новую строку, см. снимок экрана:

формула автозаполнения документа вставка строки 4


Формула автозаполнения при вставке пустых строк с кодом VBA

Если вам не нравится изменять данные в таблице, приведенный ниже код VBA также может помочь вам решить эту проблему.

1. Выберите вкладку рабочего листа, содержащую формулы, которые вы хотите автоматически заполнить, и щелкните правой кнопкой мыши, чтобы выбрать Просмотреть код из контекстного меню, чтобы перейти к Microsoft Visual Basic для приложений окно, а затем скопируйте и вставьте следующий код в модуль:

Код VBA: формула автозаполнения при вставке пустых строк

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'Updateby Extendoffice 20160725
    Cancel = True
    Target.Offset(1).EntireRow.Insert
    Target.EntireRow.Copy Target.Offset(1).EntireRow
    On Error Resume Next
    Target.Offset(1).EntireRow.SpecialCells(xlConstants).ClearContents
End Sub

формула автозаполнения документа вставка строки 5

2. Затем сохраните и закройте этот код, вернитесь к рабочему листу, теперь, когда вы дважды щелкаете ячейку между данными, новая строка будет вставлена ​​под активной ячейкой, и формула также будет автоматически заполнена.


Демонстрация: формула автозаполнения при вставке пустых строк


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Комментарии (13)


Оценок пока нет. Оцените первым!

0 / 0 / 0

Регистрация: 25.08.2015

Сообщений: 33

1

Автоматическое копирование формул при добавлении строки

27.09.2016, 14:32. Показов 18919. Ответов 5


Студворк — интернет-сервис помощи студентам

В таблицу часто вносятся данные путём добавления строк (зачастую в хаотичном порядке то в середину то выше то ниже, но главное что не в первую и не в последнюю строку)
А на против этих данных есть формулы.
Так вот, можно ли как то при добавлении новой строки заставить Exel автоматически скопировать формулы с верхней строки???

Если да то как???

Простой пример прилагаю.



0



5942 / 3154 / 698

Регистрация: 23.11.2010

Сообщений: 10,524

27.09.2016, 14:53

2

Лучший ответ Сообщение было отмечено Kamekadze_rus как решение

Решение

Отформатируйте таблицу как Таблицу и тогда все Ваши пожелания реализуются.



2



0 / 0 / 0

Регистрация: 25.08.2015

Сообщений: 33

27.09.2016, 15:01

 [ТС]

3

А как это сделать? ))))
Обвожу ячейки нажимаю вторую кнопку мыши формат ячеек… А там нет таблицы (((
Я так понимаю я что то не так делаю???



0



5942 / 3154 / 698

Регистрация: 23.11.2010

Сообщений: 10,524

27.09.2016, 15:08

4

Kamekadze_rus, выделить таблицу — Главная — группа Стили — Форматировать как таблицу.
В столбцах должно быть названия и не объединяйте ячейки



0



2640 / 1697 / 694

Регистрация: 04.09.2015

Сообщений: 3,367

27.09.2016, 15:11

5

Еще можно формулы немного поправить, чтобы при вставке строк не было ошибки деления на ноль и автоматически добавлялся номер строки.



0



0 / 0 / 0

Регистрация: 25.08.2015

Сообщений: 33

27.09.2016, 15:16

 [ТС]

6

Всем большое спасибо!
Теперь разобрался где найти формат таблицы!!!
И про формулу МИН тоже спасибо за подсказку! учту при составлении таблицы.



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

27.09.2016, 15:16

Помогаю со студенческими работами здесь

Автоматическое копирование строки в другую таблицу по признаку содержания определенной ячейки
подскажите, пожалуйста, можно ли, не будучи программистом, сделать так, чтобы строки автоматически…

QTextBrowser — автоматическое копирование текста при нажатии
Здравствуйте, есть определённый текст в QTextBrowser, мне нужно выделить одну из частей текста и…

Как сделать автоматическое копирование данных при их изменении?
Я не люблю C++, но вынужден программировать на нем. До этого я пользовался языком, в котором нет…

Excel. Копирование столбца, при заполнении 22-й строки продолжить копирование в соседний столбец
Всем привет. Задача:
Есть таблица Excel, заполнены 2 столбца, из них первый — порядковые номера,…

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:

6

Как программно протянуть формулы при добавлении строк

JannMichel

Дата: Суббота, 10.09.2016, 15:54 |
Сообщение № 1

Группа: Пользователи

Ранг: Участник

Сообщений: 74


Репутация:

0

±

Замечаний:
0% ±


2013

Приветствую гуру и интересующихся этой темой.
Эта тема — продолжение темы «Подсчет суммы в столбце в определенном диапазоне строк.
Очень помог в этом вопросе buchlotnik, Прилагаю таблицу с ЕГО решением вопроса из выше указанной темы. Дальнейшая проработка таблицы заключается в следующем:
Необходимо, что бы при добавлении пользователем строк (после 9-той) автоматически растягивались формулы в столбцах F и G. Это корректно работает при условии, если растягивать формулы вручную. Причем не из любой ячейки в столбце, а именно с той, в которой уже есть результат подсчета (конкретно F7 и G4). И в строке ИТОГО сумму тоже надо корректировать руками. Для меня это не проблема, но боюсь что будет БОЛЬШОЙ проблемой для пользователей. И каждый будет звонить и говорить, что таблица не работает. Можно ли это поправить программно?

Предыстория: Данная таблица для учителей школы, которые составляют поурочное расписание на год. Цель данной таблицы — распространить ее между учителями школы. К сожалению все они, кроме моей жены не работают в excel. Все делают эти планы в Word’e. Отсюда и сроки большие, и много ошибок, т.к. считают часы вручную. Да и жена моя начала использовать Excel только после моих настойчивых рекомендаций. Поэтому задумка заключается в том, чтобы составить шаблон, в который входит шапка и три строки: БЛОК, РАЗДЕЛ, ТЕМА (строки 1-9 и 15) Вставить формулы и раздать пользователям. При добавлении пользователем новой строки (между строками 9 и 15), формулы должны тоже добавляться автоматически.

К сообщению приложен файл:

0053934.xlsx
(13.0 Kb)

Сообщение отредактировал JannMichelСуббота, 10.09.2016, 20:08

 

Ответить

gling

Дата: Суббота, 10.09.2016, 17:18 |
Сообщение № 2

Группа: Друзья

Ранг: Старожил

Сообщений: 2449


Репутация:

652

±

Замечаний:
0% ±


2010

Вариант «Умной таблицей», может сгодится в качестве примера. При вставке строк или растягивании за нижний угол формулы прописываются автоматически.

К сообщению приложен файл:

3547040.xlsx
(14.3 Kb)


ЯД-41001506838083

 

Ответить

JannMichel

Дата: Суббота, 10.09.2016, 19:14 |
Сообщение № 3

Группа: Пользователи

Ранг: Участник

Сообщений: 74


Репутация:

0

±

Замечаний:
0% ±


2013

gling, да, стало очень удобно. Формулы растягиваются. Итоговая сумма тоже автоматически захватывает добавленные строки.
Добавил я несколько строк, и с определенного момента стал происходить сбой. Со строки 14 формула выдает не правильную сумму, а ниже Н/Д

К сообщению приложен файл:

6097611.xlsx
(15.6 Kb)

 

Ответить

gling

Дата: Суббота, 10.09.2016, 19:40 |
Сообщение № 4

Группа: Друзья

Ранг: Старожил

Сообщений: 2449


Репутация:

652

±

Замечаний:
0% ±


2010

Не придумал как привязаться к последней строке таблиц поэтому написал в формуле с запасом до 1000 строк.

К сообщению приложен файл:

0465587.xlsx
(14.2 Kb)


ЯД-41001506838083

 

Ответить

JannMichel

Дата: Суббота, 10.09.2016, 20:01 |
Сообщение № 5

Группа: Пользователи

Ранг: Участник

Сообщений: 74


Репутация:

0

±

Замечаний:
0% ±


2013

gling, таблица все верно считает… до определенного момента. Сначала подумал, что я как то не правильно вводил данные или сбил где-то формулу. Затем снова скачал файл и опять стал добавлять строки. И с ячейки F31 подсчет сбивается.

К сообщению приложен файл:

8428392.xlsx
(16.0 Kb)

 

Ответить

Nic70y

Дата: Суббота, 10.09.2016, 20:14 |
Сообщение № 6

Группа: Друзья

Ранг: Экселист

Сообщений: 8132


Репутация:

1998

±

Замечаний:
0% ±


Excel 2010

в той теме уже не стал отвечать, т.к. ответ более подходит к этой.
[vba]

Код

Sub Plus_Row()
    Rows([D1048576].End(xlUp).Row).Insert Shift:=xlDown
End Sub

[/vba]
файл перезалил — неправильную формулу написал в E10, исправил
(клятый копипаст)

еще раз заменил файл, выкинул СТРОКА(ссылка), т.к. для умной таблицы это не приемлимо

К сообщению приложен файл:

6526405.xlsm
(20.3 Kb)


ЮMoney 41001841029809

Сообщение отредактировал Nic70yСуббота, 10.09.2016, 20:34

 

Ответить

gling

Дата: Суббота, 10.09.2016, 20:31 |
Сообщение № 7

Группа: Друзья

Ранг: Старожил

Сообщений: 2449


Репутация:

652

±

Замечаний:
0% ±


2010

В файле по не известной мне причине формулы идут не по порядку, наверно удаляли строки, но в столбцах выскакивает ярлычек, нажав на который можно в столбце проставить формулы. Установите курсор в строку формул и нажмите Enter, появится ярлычек.


ЯД-41001506838083

 

Ответить

Nic70y

Дата: Суббота, 10.09.2016, 20:36 |
Сообщение № 8

Группа: Друзья

Ранг: Экселист

Сообщений: 8132


Репутация:

1998

±

Замечаний:
0% ±


Excel 2010

gling, это «болезнь» умных таблиц, в них не рекомендуется (категорически) делать ссылки на конкретные ячейки/диапазоны, тока на саму таблицу
(не всегда конечно)
[p.s.]сам сделал на 4-ю строку в сумме (шоб не удлинять формулу) надеюсь ее не зацепит[/p.s.]


ЮMoney 41001841029809

Сообщение отредактировал Nic70yСуббота, 10.09.2016, 20:38

 

Ответить

JannMichel

Дата: Суббота, 10.09.2016, 20:38 |
Сообщение № 9

Группа: Пользователи

Ранг: Участник

Сообщений: 74


Репутация:

0

±

Замечаний:
0% ±


2013

gling, сделал как Вы описали — все вернулось на место. Благодарю за помощь.
Есть еще вопрос по продолжению. Не замучил еще?

 

Ответить

JannMichel

Дата: Суббота, 10.09.2016, 21:04 |
Сообщение № 10

Группа: Пользователи

Ранг: Участник

Сообщений: 74


Репутация:

0

±

Замечаний:
0% ±


2013

Nic70y, Очень интересная кнопка. А можно ее встроить в таблицу gling? И если бы еще их сделать две: одну в столбец БЛОК, что бы сразу вставлялось слово БЛОК, Вторую в столбец РАЗДЕЛ с тем же результатом. В случае с РАЗДЕЛОМ должна добавляться еще одна пустая строка для названия урока. Это возможно? Последнюю табличку сделанную gling прикрепил

К сообщению приложен файл:

9966894.xlsx
(14.2 Kb)

 

Ответить

krosav4ig

Дата: Суббота, 10.09.2016, 21:17 |
Сообщение № 11

Группа: Друзья

Ранг: Старожил

Сообщений: 2346


Репутация:

989

±

Замечаний:
0% ±


Excel 2007,2010,2013

как вариант, формула [vba]

Код

=ЕСЛИ([@Блоки]=»»;»»;СУММ([@Урок:Урок]:ИНДЕКС([Урок]:[Урок];СТРОКА()+ПОИСКПОЗ([[#Заголовки];[Блок]];ИНДЕКС([Блоки];СТРОКА()-1):[[#Итоги];[Блоки]];)-1-СТРОКА([#Заголовки]))))

[/vba]

К сообщению приложен файл:

8452831.xlsx
(15.8 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4igСуббота, 10.09.2016, 21:18

 

Ответить

Nic70y

Дата: Суббота, 10.09.2016, 21:22 |
Сообщение № 12

Группа: Друзья

Ранг: Экселист

Сообщений: 8132


Репутация:

1998

±

Замечаний:
0% ±


Excel 2010

А можно ее встроить в таблицу gling?

можно


ЮMoney 41001841029809

Сообщение отредактировал Nic70yСуббота, 10.09.2016, 21:25

 

Ответить

JannMichel

Дата: Суббота, 10.09.2016, 21:59 |
Сообщение № 13

Группа: Пользователи

Ранг: Участник

Сообщений: 74


Репутация:

0

±

Замечаний:
0% ±


2013

Nic70y, Красота. Вставляй данные — нехочу! Просто отлично! Благодарю!

 

Ответить

buchlotnik

Дата: Суббота, 10.09.2016, 22:02 |
Сообщение № 14

Группа: Заблокированные

Ранг: Участник клуба

Сообщений: 3442


Репутация:

929

±

Замечаний:
20% ±


2010, 2013, 2016 RUS / ENG

Nic70y, Николай, если последовательно вставить блок, раздел и урок — формула для блока уплывает

 

Ответить

Nic70y

Дата: Суббота, 10.09.2016, 22:04 |
Сообщение № 15

Группа: Друзья

Ранг: Экселист

Сообщений: 8132


Репутация:

1998

±

Замечаний:
0% ±


Excel 2010

Михаил, ТС не захотел мои формулы.


ЮMoney 41001841029809

 

Ответить

buchlotnik

Дата: Суббота, 10.09.2016, 22:05 |
Сообщение № 16

Группа: Заблокированные

Ранг: Участник клуба

Сообщений: 3442


Репутация:

929

±

Замечаний:
20% ±


2010, 2013, 2016 RUS / ENG

[offtop]Понял B)

 

Ответить

JannMichel

Дата: Суббота, 10.09.2016, 22:24 |
Сообщение № 17

Группа: Пользователи

Ранг: Участник

Сообщений: 74


Репутация:

0

±

Замечаний:
0% ±


2013

krosav4ig, Ваша табличка сбоев не дает, которые описаны в посте 5 и 7. По крайней мере при первой поверке. Если таких ошибок не будет — это просто чудесно, потому как пользователи, ввиду человеческого фактора, не будут контролировать все цифры, которые выдают формулы. Ошибки неизбежны.
Пожелания:
1) Вы поменяли местами столбцы БЛОК и РАЗДЕЛ. Это принципиально? Возможно ли их вернуть на место для простоты восприятия, чтобы они располагались в строке по возрастанию?
2) И можно ли добавить кнопки, как сделал Nic70y (пост 12). Плюс к этому дополнить третью кнопку надписью УРОК. И что бы при её нажатии добавлялся следующий порядковый номер урока в столбце НОМЕР УРОКА/ЗАНЯТИЯ.

Сообщение отредактировал JannMichelСуббота, 10.09.2016, 22:53

 

Ответить

gling

Дата: Суббота, 10.09.2016, 22:30 |
Сообщение № 18

Группа: Друзья

Ранг: Старожил

Сообщений: 2449


Репутация:

652

±

Замечаний:
0% ±


2010

Еще вариант.

К сообщению приложен файл:

3302797.xlsm
(22.7 Kb)


ЯД-41001506838083

 

Ответить

JannMichel

Дата: Суббота, 10.09.2016, 22:40 |
Сообщение № 19

Группа: Пользователи

Ранг: Участник

Сообщений: 74


Репутация:

0

±

Замечаний:
0% ±


2013

ТС не захотел мои формулы.

Nic70y, ТС — это создатель топика? Если да, то дело не в том, что я не захотел Ваши формулы. А в том, что я не разобрался в них. Возможно они даже лучше остальных предложенных. Какие приемы используют Ваши формулы в отличии от других формул, я не знаю. Не специалист. Поэтому и обратился к ВАМ за помощью. Я же оцениваю с точки зрения результата. И Ваша формула считает, и формула предложенная gling считает. Разницу, которую я увидел, это более удобное оформление для восприятия.

 

Ответить

JannMichel

Дата: Суббота, 10.09.2016, 22:52 |
Сообщение № 20

Группа: Пользователи

Ранг: Участник

Сообщений: 74


Репутация:

0

±

Замечаний:
0% ±


2013

gling, Да, то что хотел. Спасибо. Только исправлять приходиться вручную после добавления уроков. Формула сбивается. Но

Установите курсор в строку формул и нажмите Enter, появится ярлычек.

спасает. Ну что же. Если нельзя исправить — будем работать так. Это не всю таблицу ручками перебирать. Огромное спасибо.

 

Ответить


При добавлении в таблицу новых строк приходится вручную восстанавливать нумерацию строк. Использование таблиц в формате

Excel 2007

позволяет автоматизировать этот процесс.

Пусть имеется обычная таблица (диапазон ячеек с данными), состоящая из трех столбцов с заголовками

№, Наименование, Цена

(в строке 1). Строки таблицы заполнены данными (кроме столбца

№,

который будет содержать номера строк).

Для организации автоматической нумерации в случае добавления или удаления строк используем следующий алгоритм (см.

файл примера

):

  • выделим всю таблицу (все 3 столбца вместе с заголовками). Для этого выделите любую ячейку в таблице и нажмите

    CTRL+A

    — будет выделена

    Текущая область

    ;

  • через пункт меню

    конвертируем

    таблицу в формат Excel 2007

    . В диалоговом окне не забудем поставить галочку «Таблица с заголовками». Нажмите ОК;

  • убеждаемся, что включена опция Автозамены «Создавать вычисляемые столбцы, заполнив таблицы формулами» (

    );

  • под заголовком столбца



    (ячейка

    А2

    ) введем формулу

    =СТРОКА()-СТРОКА($A$1)

    и нажмем клавишу

    ENTER

    (Ввод): столбец должен автоматически заполниться формулой до конца таблицы.

Теперь при добавлении/ удалении строк в середине или в конце таблицы нумерация строк будет проставляться автоматически, т.к. при вставке / удалении строк копируется формула в столбце

А

.

Понравилась статья? Поделить с друзьями:
  • Excel при вставке нули
  • Excel при вставке заменяет на дату
  • Excel при впр все значения в одну ячейку
  • Excel при вводе числа формула
  • Excel при вводе формулы отображается формула