Как пропускать пустые ячейки в excel в формуле

  • Редакция Кодкампа

17 авг. 2022 г.
читать 2 мин


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

Формула 1: игнорировать пустые ячейки в одном столбце

=IF( A2 <>"", A2 +10, "")

Эта конкретная формула добавляет 10 к значению в ячейке A2 , только если значение в ячейке A2 не является пустым.

Формула 2: игнорировать пустые ячейки в нескольких столбцах

=IF(AND( A2 <>"", B2 <>""), A2 + B2 , "")

Эта конкретная формула добавляет значения в ячейки A2 и B2 , только если обе ячейки не пусты.

В следующих примерах показано, как использовать каждую формулу на практике.

Пример 1: игнорировать пустые ячейки в одном столбце

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

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

= A2 +10

На следующем снимке экрана показано, как использовать эту формулу:

Обратите внимание, что 10 добавляется к каждой ячейке в столбце А, даже если ячейка в столбце А пуста.

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

=IF( A2 <>"", A2 +10, "")

На следующем снимке экрана показано, как использовать эту формулу:

Обратите внимание, что 10 добавляется только к каждой ячейке в столбце A, которая не пуста.

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

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

Мы можем использовать следующую формулу, чтобы сложить значения в столбцах очков и подборов только для строк, где оба значения не пусты:

=IF(AND( A2 <>"", B2 <>""), A2 + B2 , "")

На следующем снимке экрана показано, как использовать эту формулу:

Обратите внимание, что значения очков и подборов добавляются только для тех строк, где оба значения не являются пустыми.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в Excel:

Как заменить значения #N/A в Excel
Как игнорировать значения #N/A при использовании формул в Excel

 

Lucien

Пользователь

Сообщений: 11
Регистрация: 12.05.2015

Здравствуйте знатоки.
Как сделать столбец, с пропуском пустых ячеек? И чтобы это было через формулу. (для автоматизма, так как исходники меняются. А сам результат выводится на график.)
(так же в примере есть найденная формула, которая почему-то не работает)
P.S.Прочитал уже много форумов, но выложенные голые формулы не работают. Нужно видимо сразу в таблицу вписать.

Прикрепленные файлы

  • график.xlsx (13.27 КБ)

Изменено: Lucien13.05.2015 13:13:42

 

JeyCi

Пользователь

Сообщений: 3357
Регистрация: 27.11.2013

#2

12.05.2015 20:50:55

увеличьте диапазон до А16(весь исходник)
и введите формулу НЕ Enter, а CTRL+SHIFT+ENTER
— растяните формулу вниз…
… работает формула, представленная  в файле!

Код
=ЕСЛИОШИБКА(ДВССЫЛ("A"&НАИМЕНЬШИЙ(ЕСЛИ(ЕПУСТО($A$2:$A$16);"";СТРОКА($A$2:$A$16));СТРОКА(I1)));"")

Изменено: JeyCi12.05.2015 20:51:41

чтобы не гадать на кофейной гуще, кто вам отвечает и после этого не совершать кучу ошибок — обратитесь к собеседнику на ВЫ — ответ на ваш вопрос получите — а остальное вас не касается (п.п.п. на форумах)

 

Lucien

Пользователь

Сообщений: 11
Регистрация: 12.05.2015

О, Благодарю! Теперь сработало.  Раньше через CTRL+SHIFT+ENTER пытался запустить, но не получалось. Спасибо за быстрый ответ.

 

Lucien

Пользователь

Сообщений: 11
Регистрация: 12.05.2015

И ещё вопросик. В формуле какой-то странный параметр, куда-то вбок направлен. Он нужный или его можно как-то удалить?
=ЕСЛИОШИБКА(ДВССЫЛ(«A»&НАИМЕНЬШИЙ(ЕСЛИ(ЕПУСТО($A$2:$A$16);»»;СТРОКА($A$2:$A$16));СТРОКА(F1)));»»;)

(этот вопрос решён)
После переноса формулы и создания массива, он продолжает работать только
со столбцом «А». Адрес столбца в формуле поменял на «F», но с ним
работать не хочет, а опять берёт значения из столбца «А».  На другой
лист перенёс — та же история.
Как сдвинуть эту хитрую формулу?
(этот вопрос решён) >> столбец меняется здесь >>        =ЕСЛИОШИБКА(ДВССЫЛ(«A»&НАИМЕНЬШИЙ(ЕСЛИ(ЕПУСТО($A$2:$A$16);»»;СТРОКА($A$2:$A$16));СТРОКА(F1)));»»

Изменено: Lucien13.05.2015 17:45:15

 

V

Пользователь

Сообщений: 5018
Регистрация: 22.12.2012

#5

13.05.2015 17:03:01

Цитата
Lucien написал: Адрес столбца в формуле поменял на «F»

это ни чего не даст, почитайте про ф-цию СТРОКА в справке.

 

Lucien

Пользователь

Сообщений: 11
Регистрация: 12.05.2015

Благодарю за ответ. Решение уже сам увидел. А про параметр «СТРОКА» можете сказать? Или просто исправить и всё. Спасибо.
(в справке написано очень умными словами там ничего не понял)

Изменено: Lucien13.05.2015 17:44:43

 

V

Пользователь

Сообщений: 5018
Регистрация: 22.12.2012

#7

13.05.2015 17:08:36

лучше использовать такую формулу

Код
=ЕСЛИОШИБКА(ИНДЕКС($F$2:$F$16;НАИМЕНЬШИЙ(ЕСЛИ(ЕПУСТО($F$2:$F$16);"";СТРОКА($F$1:$F$15));СТРОКА(L1)));"")

чем использовать ДВССЫЛ

 

V

Пользователь

Сообщений: 5018
Регистрация: 22.12.2012

#8

13.05.2015 17:10:35

Цитата
Lucien написал:  А про параметр «СТРОКА» можете сказать? Или просто исправить и всё.

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

 

Lucien

Пользователь

Сообщений: 11
Регистрация: 12.05.2015

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

 

Lucien

Пользователь

Сообщений: 11
Регистрация: 12.05.2015

Оказалось что ячейка не совсем пустая, а с формулой. Как сделать чтобы массив срабатывал от значения «пусто» с формулой внутри?  
(проблема отмечена жёлтым цветом)

 

V

Пользователь

Сообщений: 5018
Регистрация: 22.12.2012

#11

13.05.2015 20:13:42

Код
=ЕСЛИОШИБКА(ИНДЕКС($F$2:$F$16;НАИМЕНЬШИЙ(ЕСЛИ($F$2:$F$16="";"";СТРОКА($F$1:$F$15));СТРОКА(L1)));"")
 

Lucien

Пользователь

Сообщений: 11
Регистрация: 12.05.2015

Спасибо Большое. Что бы я без умных людей делал…

 

farich_13

Пользователь

Сообщений: 17
Регистрация: 27.11.2017

#13

10.08.2019 11:36:38

Цитата
V написал: 1=ЕСЛИОШИБКА(ИНДЕКС($F$2:$F$16;НАИМЕНЬШИЙ(ЕСЛИ($F$2:$F$16=»»;»»;СТРОКА($F$1:$F$15));СТРОКА(L1)));»»)

всем доброе утро.
мне помогла эта формула, но мне в нее необходимо добавить еще 1 условие, наподобие ЕСЛИ($F$2:$F$16=»»;»»;

делаю вот так (в примере мои ячейки):

Цитата
=ЕСЛИОШИБКА(ИНДЕКС($E$1:$E$18;НАИМЕНЬШИЙ(ЕСЛИ($E$1:$E$18=»»;»»;ЕСЛИ($E$1:$E$18=»Иванов»;»»;СТРОКА($E$1:$E$18));СТРОКА(L1)));»»)

Что-то не так, подскажите, почему выдает ошибку:

Прикрепленные файлы

  • Снимок.PNG (14.23 КБ)

Изменено: farich_1313.08.2019 16:37:34

 

artyrH

Пользователь

Сообщений: 2054
Регистрация: 01.07.2018

farich_13, может достаточно добавить еще одну скобку в  — 18)));СТР
а лучше пример бы

 

farich_13

Пользователь

Сообщений: 17
Регистрация: 27.11.2017

#15

14.08.2019 01:03:33

спасибо. помогло.

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

Вот, что получилось в итоге:

Код
=ЕСЛИОШИБКА(ИНДЕКС($A$1:$A$18;НАИМЕНЬШИЙ(ЕСЛИ($A$1:$A$18="";"";ЕСЛИ($A$1:$A$18=$F$2;"";ЕСЛИ($A$1:$A$18=$F$3;"";СТРОКА($A$1:$A$18))));СТРОКА(H1)));"")

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

Пример во вложении.

Прикрепленные файлы

  • ТЕСТ.xls (28.5 КБ)

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Добавляем формулу для отметки нужных:
=ЕСЛИ(A2<>»»;ЕСЛИ(СЧЁТЕСЛИ($E$2:$E$3;A2)=0;МАКС($B$1:B1)+1))
и подтягиваем обычной ВПР:
=ЕСЛИ(СТРОКА(A1)>$D$1;»»;ИНДЕКС(A:A;ПОИСКПОЗ(СТРОКА(A1);B:B;)))

Прикрепленные файлы

  • список.xls (29.5 КБ)

 

buchlotnik

Пользователь

Сообщений: 3863
Регистрация: 31.10.2014

Excel 365 Бета-канал

#17

14.08.2019 07:47:14

Цитата
Lucien написал:
через формулу. (для автоматизма, так как исходники меняются

а почему для автоматизма не годится PQ?

Код
let
    from = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    iskl = Table.Column(Excel.CurrentWorkbook(){[Name="Таблица2"]}[Content],"Исключения"),
    filtr = Table.SelectRows(from, each ([Сотрудник] <> null and not List.ContainsAny(Record.ToList(_),iskl)))
in
    filtr

Прикрепленные файлы

  • список.xlsx (17.61 КБ)

Соблюдение правил форума не освобождает от модераторского произвола
<#0>

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Потому что одни забыли формулы, а другие не хотят учить PQ :)

 

buchlotnik

Пользователь

Сообщений: 3863
Регистрация: 31.10.2014

Excel 365 Бета-канал

#19

14.08.2019 10:07:46

Цитата
vikttur написал:
забыли формулы

нет ну ни фига себе — оскорбления на форуме запрещены  :cry:  :cry:  :cry:

Соблюдение правил форума не освобождает от модераторского произвола
<#0>

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Дык, о PQ — это о себе. Равенство и братство :)

 

БМВ

Модератор

Сообщений: 21383
Регистрация: 28.12.2016

Excel 2013, 2016

#21

14.08.2019 12:03:14

OFF

Цитата
vikttur написал:
Дык, о PQ — это о себе. Равенство и братство

Это я еще с SQL не подкатывал :-)

Код
SELECT Сотрудник
FROM ( SELECT T1.Сотрудник, T2.Исключения
FROM {oj [Лист1$A:A] as T1 LEFT OUTER JOIN [Лист1$E:E] as T2 ON T1.Сотрудник = T2.Исключения}
WHERE (T1.Сотрудник Is Not Null) )
WHERE (Исключения Is Null)

По вопросам из тем форума, личку не читаю.

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Еще один скоро пропадет. А если учитывать, что в самокрутке, то это «скоро» настанет еще быстрее )

 

farich_13

Пользователь

Сообщений: 17
Регистрация: 27.11.2017

#23

15.08.2019 00:22:40

vikttur, спасибо, очень крутой вариант. Значительно лучше, чем массив тормознутый.
Но мой перфекционизм и мозг, любящий все сокращать и из за этого усложнять, не дает мне покоя из за дополнительного столбца с порядковыми цифрами и ЛОЖЬю.
Можно, конечно, просто скрыть текст невидимым шрифтом. Но как план Б.
Но осмелюсь спросить, есть вариант обойтись без доп столбца?

Цитата
buchlotnik написал: а почему для автоматизма не годится PQ?

не зашел мне PQ (не отрицаю, что я в нем просто не разобрался), но я больше формулы уважаю.
Спасибо за альтернативу.

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

#24

15.08.2019 02:44:38

Цитата
farich_13 написал: есть вариант обойтись без доп столбца?

Есть. Он у Вас и раньше был :)
Не всегда короче_меньше = лучше.

 

БМВ

Модератор

Сообщений: 21383
Регистрация: 28.12.2016

Excel 2013, 2016

farich_13, Подразгогнать формулу можно чуток
=IFERROR(INDEX(A:A;SMALL(IF(($A$2:$A$18<>»»)*ISERROR(MATCH($A$2:$A$18;$E$1:$E$100;));ROW($A$2:$A$18));ROW(A1)));»»)
или
=IF(ROW()<=COUNTIF(A:A;»>»»»)-SUM(COUNTIF(A:A;$E$1:$E$3));INDEX(A:A;SMALL(IF(($A$2:$A$18<>»»)*ISERROR(MATCH($A$2:$A$18;$E$1:$E$100;));ROW($A$2:$A$18));ROW(A1)));»»)
Только на больших объемах будет понятно, что из этого работает быстрее, но разница только в обработке запаса, когда формула должна вернуть пусто.

По вопросам из тем форума, личку не читаю.

 

farich_13

Пользователь

Сообщений: 17
Регистрация: 27.11.2017

Вернулись к массиву.
В общем, решений достаточно. Потестю по скорости, что меня устроит и в практику.

Всем большое спасибо.

 

Добрый день.

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

Прикрепленные файлы

  • Book1.xlsx (18.5 КБ)

 

memo

Пользователь

Сообщений: 1423
Регистрация: 28.02.2018

Excel 2013/2016

#28

22.02.2021 03:36:01

Доброй ночи.

Код
=IFERROR(INDEX($B$9:$B$50;MATCH(AGGREGATE(15;6;COUNTIF($B$9:$B$50; "<"&$B$9:$B$50)/((COUNTIF(F$8:F8; $B$9:$B$50)=0)/($C$9:$C$50=F$8)/($B$9:$B$50<>"")); 1); INDEX(COUNTIF($B$9:$B$50; "<"&$B$9:$B$50);0); 0));"")

Прикрепленные файлы

  • Book1.xlsx (19.74 КБ)

 
memo

, спасибо большое!

Теперь предстоит в этом разобраться.

 

memo

Пользователь

Сообщений: 1423
Регистрация: 28.02.2018

Excel 2013/2016

#30

22.02.2021 12:57:14

Дмитрий Левин,
Та формула отсекает дубликаты и сортирует список. Если этого не требуется, то можно попроще.

Код
=IFERROR(INDEX($B$9:$B$50;AGGREGATE(15;6;ROW($A$1:$A$50)/(($C$9:$C$50=F$8)/($B$9:$B$50<>"")); ROW(A1)));"")

Прикрепленные файлы

  • Book1.xlsx (19.63 КБ)

Изменено: memo22.02.2021 12:57:30

1 / 1 / 0

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

Сообщений: 5

1

Как формуле пропустить пустые ячейки?

09.08.2010, 20:01. Показов 22634. Ответов 2


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

Есть столбец «А» с данными, но данные идут не подряд, а вразнобой, т.е. 1 ячека с данными следующие 4 пустые, затем опять с данными, следующие 3 пустые и т.д. закономерности нет. Нужна формула, чтобы например эти данные копировались в соседний столбец «B» и причём без пустот — друг за другом, т.е. формулой можно заполнить весь диапазон столбца «B» и когда появляется в столбце «А» следующее значение, то оно сразу копируется в «B», но только друг за другом без пустых строк.
Заранее спасибо.



0



КотЪ

219 / 219 / 60

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

Сообщений: 688

11.08.2010, 18:51

2

Непонятно, зачем. Если потом с этими данными будет работать какая-то формула, то она просто пропустит пустые ячейки.



0



1 / 1 / 0

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

Сообщений: 5

12.08.2010, 13:25

 [ТС]

3

Цитата
Сообщение от Zabiyak
Посмотреть сообщение

Непонятно, зачем. Если потом с этими данными будет работать какая-то формула, то она просто пропустит пустые ячейки.

На самом деле мне нужен был принцип, всё выглядит несколько сложнее. Я уже нашел решение более подробно это можно узнать на другом форуме:

 Комментарий администратора 
ссылки на посторонние форумы запрещены. если несложно, можно выложить саму суть решения?

Добавлено через 1 час 54 минуты

ссылки на посторонние форумы запрещены. если несложно, можно выложить саму суть решения?

Ух, я думал все форумы програмистов — братья )
Там тема растянулась на пару страничек. Суть такая, что данные в столбце, на листе1, между которыми пустые ячейки, надо чтобы переносились на лист3 подряд без этих самых пустых ячеек.
Решилось всё при помощи массива такого типа:
={ИНДЕКС($A$1:$A$1000;НАИМЕНЬШИЙ(ЕСЛИ($A$1:$A$1000 =»»;66000;СТРОКА($A$1:$A$1000));СТРОКА());1)}



1



Есть столбец «А» с данными, но данные идут не подряд, а вразнобой, т.е. 1 ячека с данными следующие 4 пустые, затем опять с данными, следующие 3 пустые и т.д. закономерности нет. Нужна формула, чтобы например эти данные копировались в соседний столбец «B» и причём без пустот — друг за другом, т.е. формулой можно заполнить весь диапазон столбца «B» и когда появляется в столбце «А» следующее значение, то оно сразу копируется в «B», но только друг за другом без пустых строк.
Заранее спасибо.


Данные текстовые или числовые? Возможен ли перенос в отсортированном порядке (если числа)?

Webmoney: E350157549801 Z116603216205 R268084006579


Это проделать хотелось бы с датой и со значениями формул. Т.е. если точнее, то колонка с датами (они в разнобой), напротив этих дат ячейки со значениями получаемых в результате формул (они параллельны датам)

«А»        «D»
дата    формула
3 пустые строки
дата    формула
4 пустые строки
дата    формула

и т.д.

Нужно что бы они попадали на другой лист, все вместе в этом же порядке, но без пустых строк:
«А»       «B»
дата    значение взятое из формулы на первом листе
дата    значение взятое из формулы на первом листе
дата    значение взятое из формулы на первом листе



или так — ставим фильтр на колонку А раскрываем фильтр, убираем галочку «Выделить все» идем вниз списка фильтра, ставим галочку у «пустые», нажимаем OK выделяем все строки и из контекстного меню вызываем «удалить строку». Все пустые строки при этом будут удалены.


На первом листе с данными:
«А»        «D»
дата    формула
3 пустые строки
дата    формула
4 пустые строки
дата    формула

трогать и удалять пустые строки нельзя, дело в том что они не совсем пустые — между колонками «А», «D» есть ещё колонки «B» и «C», а они не пустые, ячейки которые пусты, они пусты, только в колонках «А» и «D». Фильтр тут не поможет, данные нужны на другом листе идущие без пустых ячеек не для того чтобы их лицезреть, а там будет целая таблица расчётов, колонки «А» и «С» на другом листе будут являться началом таблицы.
http://narod.ru/disk/23582366000/home.zip.html
Прилагаю файл, участвуют в выше сказанном «Лист1» и «Лист3». В этом файле много не решенных задач и вопросов куча, но этот на данный момент самый приоритетный. Решил как-то дозировано разобраться. Сразу скажу — это не для учёбы и каких-то там курсовых :)



Пытаюсь понять принцип работы формулы. Вроде прикольно, но дополнительный столбец очень не кстати, получается его ещё нужно ручками забивать числами на единицу большими предыдущей даты.
На листе3 пытался формулу распространить на весь столбец — не выходит. Не могу понять — почему? 


С помощью небольшого макроса попробуйте

Не торопись, и все успеешь намного быстрее


Я использую такую формулу массива:

={ИНДЕКС($A$1:$A$1000;НАИМЕНЬШИЙ(ЕСЛИ($A$1:$A$1000=»»;66000;СТРОКА($A$1:$A$1000));СТРОКА());1)}

На картинке видно что и где…


Да и формула выдает #ССЫЛКА!, когда заканчиваются исходные данные и далее идут одни пустые ячейки, можно в самой формуле это предусмотреть (тогда она станет больше), но мне, например, проще удалить ошибки. В пользу производительности т.с.


Цитата: lema от 10.08.2010, 10:40
Пытаюсь понять принцип работы формулы. Вроде прикольно, но дополнительный столбец очень не кстати, получается его ещё нужно ручками забивать числами на единицу большими предыдущей даты.
На листе3 пытался формулу распространить на весь столбец — не выходит. Не могу понять — почему? 

Цитата: sergo44441 от 10.08.2010, 10:54
С помощью небольшого макроса попробуйте

вообщето на листе 1 незнаю зачем написал еще условие с если

там просто можно СЧЕТЗН()

а вот что значит распространить на весь столбец? ну берем и копируем. если значение не найдено возвращается ошибка, которую можно скрыть с помощью ЕСЛИОШИБКА (2007 офис) или ЕОШИБКА (2003)

а там смотрите сами


Цитироватьа вот что значит распространить на весь столбец

Да мелочь — в смысле выделяю ячейку с формулой, затем выделяю весь столбец и вставляю — получается одинаковая дата во всех столбцах, а если выделил формулу и вставил ручками в выбранное кол-во ячеек(которые ниже идут) то всё нормально. Кстати, оказывается достаточно в первом столбце только напротив даты цифры ставить, а это уже здорово. Я грешным делом подумал, что до следующей даты всё забито должно быть одинаковой цифрой.
Сейчас «поиграюсь» с тем что уважаемый Василий написал. Посмотрю что получится



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


А это из файла который я выложил выше:
«D2» считает сумму С3:С6 и далее по такому же принципу. В колонке D хотелось размножить некую формулу на весь столбец. Количество значений в колонке С всё время разное, т.е. не стабильно. Вот вбиваю я значения ручками в колонке С, а в ячейке точно напротив даты в колонке D (те что помечены голубым) выводится их сумма. Диапазон получается почти всё время разный (до пустой ячейки). Обычно приходится становится в ячейку голубую, нажимать сумму и выделять диапазон — всё руками.


С помощью макроса можно такое сделать

Не торопись, и все успеешь намного быстрее


Цитата: sergo44441 от 10.08.2010, 17:50
С помощью макроса можно такое сделать

Да я вних ни чего не смыслю, думал за счёт формул. Макросы даже когда пишут на форумах, я не знаю куда их пихать и что сними делать :o


а с помощью формул массива — вот так.
Если же Вы решитесь заменить пробелы между рядами чисел любым наперед известным символом, то формулу можно будет еще больше упростить и отказаться от необходимости использовать формулу-массива — можно будет использовать функцию ПОИСКПОЗ(Символ,СМЕЩ(…),0)
P.S. Да, у функции есть ограничение — если ряд чисел может быть более 100, то в функцию необходимо внести корректировку в этом месте: ДВССЫЛ(«1:100«)


Т.е. в ручную придётся какой-то символ параллельно вбивать? Если так то получается + на —
Не шибко это прибавит функциональности. Или я недопонял?


Такой вариант:

=ЕСЛИ((B1=»»)*(B2<>»»);СУММ(B2:ИНДЕКС(B2:B100;ПОИСКПОЗ(«»;B2:B100&»»;)));»»)

Массив

Webmoney: E350157549801 Z116603216205 R268084006579


Цитата: kimtan от 11.08.2010, 01:23
Такой вариант:
=ЕСЛИ((B1=»»)*(B2<>»»);СУММ(B2:ИНДЕКС(B2:B100;ПОИСКПОЗ(«»;B2:B100&»»;)));»»)

В точку! Только в моём варианте если точно, вот так выглядит:
{=ЕСЛИ((C2=»»)*(C3<>»»);СУММ(C3:ИНДЕКС(C3:C100;ПОИСКПОЗ(«»;C3:C100&»»;)));»»)}
Всё чётко работает. :)
Спасибо большое!


При работе на листе Excel иногда может потребоваться пропустить все остальные или n-е ячейки при перетаскивании и применении формулы к другим ячейкам, как показано ниже. Как вы могли бы выполнить эту задачу в Excel?


Пропускать ячейки при перетаскивании формулы с функциями OFFSET и ROW

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

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

=OFFSET($A$2,(ROW(C1)-1)*2,0)

Внимание: В этой формуле A2 — первая ячейка списка данных, откуда извлекать значения. Число 2 означает пропускать каждую вторую ячейку при перетаскивании формулы. Если вам нужно пропустить каждую третью ячейку, измените число на 3.

Tips: Чтобы получить каждую вторую ячейку, которая начинается со второй ячейки в определенном диапазоне данных, используйте эту формулу: =СМЕЩЕНИЕ($A$2,СТРОКА(D1)*2-1,0), а затем перетащите маркер заполнения вниз, чтобы получить результаты, пока не появятся нули, см. снимок экрана:


Пропускать ячейки при перетаскивании формулы с функциями ИНДЕКС и СТРОКИ

Существует еще одна формула, созданная с помощью функций ИНДЕКС и СТРОКИ, которая может оказать вам услугу, сделайте следующее:

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

=INDEX($A$2:$A$13,ROWS($C$1:C1)*2-1)

Tips: Чтобы извлечь значения, которые начинаются со второй ячейки в определенном диапазоне данных, используйте приведенную ниже формулу: =INDEX($A$2:$A$13,ROWS($D$1:D1)*2)

Внимание: В приведенных выше формулах РЯДЫ функция возвращает номер строки каждых 2 ячеек, а INDEX Функция находит соответствующие строки в диапазоне $A$2:$A$13 и возвращает значения в строках диапазона.


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

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

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

вкладка kte 201905


Вкладка Office — предоставляет интерфейс с вкладками в Office и значительно упрощает вашу работу

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

офисный дно

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


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

Понравилась статья? Поделить с друзьями:
  • Как пропорционально уменьшить сумму в excel
  • Как пропорционально разделить сумму по отношению к числам excel
  • Как пропорционально изменить размеры вставленного в excel рисунка
  • Как пропорционально изменить размер вставленного в excel рисунка
  • Как прописывать функции в excel