Значение пропустить в excel

 

Здравствуйте, профессионалы!
Помогите, пожалуйста, решить одну проблему.
Нужно, чтобы из одного столбца(в котором есть и пустые строчки, и строчки с текстом) перенести все текстовые значения(значения всех непустых ячеек) в другой, рядом стоящий столбец.
Простыми словами — в другом столбце расположить все значения, пропуская пустые строчки.
(я в примере в третьем столбце сам напечатал желаемый результат — для наглядности желаемого результата)

Заранее огромное Вам спасибо!

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

  • вопрос.xlsx (10.16 КБ)

 

Проблема ещё заключается в том, что ячейки эти(строки) будут не совсем пустые. Они будут с формулами.

{=ЕСЛИОШИБКА(ДВССЫЛ(«A»&НАИМЕНЬШИЙ(ЕСЛИ(ЕПУСТО($A$2:$A$14);»»;СТРОКА($A$2:$A$14));СТРОКА(A2)));»»)} — не подходит!(она если в строке находит формулу — не считает её пустой. Хотя ЗНАЧЕНИЕ строки — пустота.

 

можно присвоить (по формуле) этим ячейкам(строкам) значение 0.
тогда нужно будет пропускать все строки с 0.
Как тогда это сделать?

 

формула эта(вышеприведенная) не моя. но насколько я смог её понять — надо в ней заменить ЕПУСТО на ЕСЛИ <>0.
потому что, формула эта рабочая. проверил на другой таблице.

просто надо немного изменить условия(исключить все ячейки с 0). для того чтобы это сделать — моих мозгов гуманитарных не хватит…

 

k61

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

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

Здравствуйте.
В примере нет ячеек с формулами.

 

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

вот ещё раз — уже измененная.
ПОЛУЧАЕТСЯ ЧТО НУЖНО ПРОПУСКАТЬ НЕ ПУСТЫЕ ЯЧЕЙКИ, А ТЕ, ЗНАЧЕНИЕ КОТОРЫХ = 0.

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

  • вопрос.xlsx (12.06 КБ)

 

k61

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

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

 

Да, вы правильно меня поняли! спасибо Вам за это решение!

А можно этот процесс автоматизировать? чтобы всё происходило само? (как по формулам)

Спасибо Вам!

 

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

 

k61

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

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

#10

20.02.2014 05:19:38

Цитата
А можно этот процесс автоматизировать?

По какому событию автоматизировать?

Цитата
нужно будет эту формулу знать

Нет там формулы. Правая кнопка мыши на ярлыке листа — Исходный текст — там макрос проживает Sub www().

P.S. Какая боль, какая боль, Макрос  — Формула   — 1 :0 !  (ковер на песню) :)

Изменено: k6120.02.2014 05:23:33
(Добавил песню.)

 

мне нужно чтобы всё считалось само — без кнопок.
{=ЕСЛИОШИБКА(ДВССЫЛ(«A»&НАИМЕНЬШИЙ(ЕСЛИ(ЕПУСТО($A$2:$A$14);»»;СТРОКА($A$2:$A$14));СТРОКА(A2)));»» ;) }
эта формула работает. в ней знающему человеку нужно изменить условие с ПУСТОЙ СТРОКИ НА 0.
Помогите, Пожалуйста…

 

Nic70y

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

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

Win7 MSO 2013

#12

21.02.2014 01:01:26

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

формула массива. формулы массива очень массивные! чем Вас макрос не устроил?
второй файл ВПР + доп.столбец

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

  • 18999.xlsx (13.13 КБ)
  • 19201.xlsx (12.19 КБ)

Изменено: Nic70y21.02.2014 01:08:37
(2-й файл)

 

Nic70y,СПАСИБО ВАМ!!!!
Да, это именно то, что мне нужно!!! все считается само, и без моего вмешательства (пусть и путем сложных, длинных и нелепых формул)!
Спасибо огромное! Вы мне очень помогли!
Приятно иметь дело с профессионалами!
И огромное спасибо этому прекрасному сайту! Это просто мечта для человека, несведущего в этих сложностях!

 

k61

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

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

#14

21.02.2014 04:23:48

Цитата
А можно этот процесс автоматизировать?

Вопрос остался.

 

dmitryalexeevich

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

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

#15

21.02.2014 07:03:18

k61,почему? формула считает всё, даже при изменении значений в ячейках.
никаких действий от пользователя не нужно.

Цитата
dmitryalexeevich пишет:
все считается само, и без моего вмешательства

процесс автоматизирован.

 

Z

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

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

Win 10, MSO 2013 SP1

#16

21.02.2014 07:39:10

Off — Улыбнуло:

Цитата
dmitryalexeevich пишет: процесс автоматизирован.

Цитата
пусть и путем сложных, длинных и нелепых формул!

;)

«Ctrl+S» — достойное завершение ваших гениальных мыслей!.. ;)

 

greatsky

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

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

Доброго времени суток, а как сделать так чтобы было тоже самое только сразу было 3 столбца. то есть примере 19201 были еще данные в других столбцах, данные параллельные,если есть с столбце A то в этой же строке есть и в B, создавать ошибку пож каждый столбец не вариант, я хочу уменьшить размер файла а строк 56 000, из них основная масса бесполезных нулей, если бы взять написать макрос,  не обязательно должен быть автоматизированным, проще нажать кнопку обновить. у меня имеется целая куча однотипных диапазонов на разных листах, из них практически все пустые. так как формула рассчитывает там ноль. даже не ноль а пусто ***** «» *****, проще говоря мне из A1xA5600 на разных листах, причем на одном A25xA5600, на другом и CW1xCW15600? выбрать не пустые ячейки и выбросить их все на одном листе  

 

Михаил С.

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

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

#18

06.08.2016 00:41:15

Цитата
greatsky написал:
а как сделать так чтобы было тоже самое

Для начала создать свой пример, что есть, что надо и желательно как можно ближе к оригиналу.
Ну и, возможно, создать новую тему (впрочем, ваш вопрос пока сходен с темой, может новую тему и не надо)

 

greatsky

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

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

Это не коммерческий проект, делаю для себя расчет, есть таблицы Данные1….. ДанныеN (около сорока) на разных листах и разбросаны хаотично, но все данные одинаковые (по шапке) , имеются две задачи, первая собрать данные из таблиц (Данные1….. ДанныеN) и вывести на лист «результат», поочередно, пропускай пустые строки (пустые они условно, там и нули и пусто и «», так как они тоже рассчитываются экселем, выводя результат то 0, то пусто) вторая задача стоит тоже самое, но выполнить группировку по Крепежная фурнитура, чтобы считало итоговое количество, но можно было развернуть и посмотреть в каких ящиках, самая главная задача это первая, так как таблиц много, и результат простого копирования Лист1!B1=Листс2!B3 является большой вес файлом и я жду минут пять покуда он откроется, можно макросом, я создам кнопку обновить, да и самое важное, что данные могут меняться, поэтому просто удалять из тех огромных таблиц, данные не вариант  

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

  • Пример.xlsx (97.43 КБ)

Изменено: greatsky06.08.2016 10:54:21

 

JayBhagavan

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

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

ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64

greatsky, а в чём сложность? Пишите макрос. Алгоритм следующий:
1) цикл по листам книги
2) если имя листа начинается с «Данные», то обрабатываем его
3) поиск ячейки, которая содержит фразу «Крепежная фурнитура»
4) к найденной ячейке применяем команду «выделить область»
5) цикл по строкам, со второй строки, т.к. это шапка
6) если яч. в первом столбце диапазона не равна нулю и длина больше нуля, то эту строку диапазона копируем на лист «Результат», ниже последней заполненной ячейки
Всё.

<#0>
Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori

 

greatsky

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

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

Такой сложный макрос я не осилю никогда. все что я могу готовый макрос чуть подредактировать, по логике — это максимум

Изменено: greatsky06.08.2016 12:55:31

 

JayBhagavan

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

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

ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64

greatsky, уверяю Вас — осилите. На форуме примеров масса, по каждому пункту можете в любом поисковике задать вопрос «вба как …», где … — Ваш вопрос. Если лень самостоятельно разобраться, тогда Вам помогут в ветке «работа», либо обождите того у кого настроение волонтёра. (у меня отнюдь не волонтёрское настроение на данный момент)

<#0>
Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori

 

greatsky

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

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

Да, конечно, вы не чем мне не обязаны) подождем, я пробовал — мои познания в VB 0 я пробовал и чуть попроще и без помощи не обошелся  

Изменено: greatsky06.08.2016 13:02:23

 

JayBhagavan

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

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

ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64

#24

06.08.2016 13:26:50

Скрытый текст

Для критиков:

<#0>
Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori

 

greatsky

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

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

Спасибо, сейчас буду пробовать, отпишусь как смогу встроить, так как я и встраивать буду целый день)  

 

JayBhagavan

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

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

ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64

greatsky,

погодите. Ошибка в макросе. Исправляю…

ЗЫ Не, показалось. :)

Изменено: JayBhagavan06.08.2016 13:32:24

<#0>
Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori

 

greatsky

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

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

#27

06.08.2016 13:33:43

Цитата
JayBhagavan написал: End With ‘ ActiveWorkbook

предпоследняя строчка туда скопировать другой лист? (как бы цикл)  

 

JayBhagavan

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

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

ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64

greatsky, With к циклам не имеет никакого отношения.

<#0>
Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori

 

greatsky

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

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

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

Крепежная   фурнитура Кол. Един. изм.
    ящика
Примечания

заполненные и пустые ячейки

Другая фурнитура Кол. Един. изм.
ящика
Примечания

заполненные и пустые ячейки

они параллельны. как сделать так чтобы не брал другую фурнитуру

И еще вопрос, я так понял все листы должны быть одного имени, ну или начинаться с одного имени можно так ДанныеВН1,  ДанныеВК5, он все после звездочки воспримет правильно? верно?  

Изменено: greatsky06.08.2016 13:53:23

 

JayBhagavan

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

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

ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64

#30

06.08.2016 13:56:52

Цитата
2.3. Приложите файл(ы) с примером (общим весом не более 100 Кб) в реальной структуре и форматах данных того, что есть сейчас и того, что хотелось бы на выходе.

<#0>
Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori

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

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

Есть столбец «А» с данными, но данные идут не подряд, а вразнобой, т.е. 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 как Paste Special (Специальная вставка). Многим, возможно, приходилось испытывать недоумение, если не разочарование, при копировании и вставке данных в Excel. Вы вставляли данные и получали совсем не то, что ожидали получить. Я покажу Вам некоторые интересные трюки с использованием Специальной вставки и расскажу, как использовать некоторые полезные возможности этого инструмента, чтобы данные всегда выглядели именно так, как нужно.

После прочтения этой статьи Вы научитесь транспонировать, удалять ссылки и пропускать пустые ячейки при помощи инструмента Paste Special (Специальная вставка). После каждого раздела приведено краткое пошаговое резюме. Пользуйтесь ссылками быстрого доступа или распечатайте эти резюме на бумаге, поместите рядом с компьютером и используйте их как удобную инструкцию. Ну что ж, приступим!

Если Вы хотите при помощи инструмента Paste Special (Специальная вставка) научиться вставлять только значения или форматирование, копировать ширину столбцов, умножать и делить данные на заданное число, а также прибавлять и удалять значение сразу из целого диапазона ячеек обратитесь к статье Специальная вставка в Excel: значения, форматы, ширина столбцов .

  • Базовые знания о Специальной вставке
  • Транспонировать: преобразуем столбцы в строки (или наоборот)
  • Транспонировать – кратко о главном
  • Удаляем гиперссылки
  • Быстрое удаление гиперссылок – кратко о главном
  • Пропускаем пустые ячейки
  • Пропускаем пустые ячейки – кратко о главном

Содержание

  1. Базовые знания о Специальной вставке
  2. Преобразуем столбцы в строки (или наоборот)
  3. Транспонировать – кратко о главном
  4. Удаляем гиперссылки (много и быстро)
  5. Быстрое удаление гиперссылок – кратко о главном
  6. Пропускаем пустые ячейки
  7. Пропускаем пустые ячейки – кратко о главном

Базовые знания о Специальной вставке

Прежде чем воспользоваться инструментом Paste Special (Специальная вставка), Вы должны иметь что-то в буфере обмена, иначе, при попытке использовать эти функции, они будут серого цвета и не активны, как на рисунке ниже.

Первым делом Вы должны скопировать данные в буфер обмена, иначе не сможете воспользоваться функцией Специальная вставка. На рисунке видно, что на Ленте и в контекстном меню, инструмент Paste Special (Специальная вставка) не активен:

Специальная вставка в Excel

Сначала Вы должны выбрать и скопировать любую информацию. После этого действия Excel хранит скопированные данные в буфере обмена. Теперь Вы можете использовать Специальную вставку. Есть два способа вызвать эту функцию. Оба открывают диалоговое окно Paste Special (Специальная вставка), которое предоставляет доступ к целому набору полезных настроек (см. рисунок ниже).

Воспользуйтесь одним из следующих способов:

  1. На вкладке Home (Главная) нажмите на маленький треугольник под словом Paste (Вставить) и в выпадающем меню выберите Paste Special (Специальная вставка).
  2. Щелкните правой кнопкой мыши, а затем в контекстном меню выберите Paste Special (Специальная вставка).

Заметьте, что после того, как Вы скопировали данные, Специальная вставка становится доступной.

Специальная вставка в Excel

Преобразуем столбцы в строки (или наоборот)

Оставим позади основы и давайте немного взбодримся. В следующем примере будем использовать таблицу, созданную для контроля калорий во время диеты. Допустим, таблица Вас устраивает, но не нравится, что наименования продуктов расположены вертикально. Хотелось бы расположить дни недели вертикально, а наименования продуктов – в строке. Другими словами, Вы хотите транспонировать эти данные.

Для этого выделяем данные, копируем их, ставим курсор в нужную ячейку, открываем меню инструмента Paste Special (Специальная вставка) и выбираем Transpose (Транспонировать) – все это показано на изображениях ниже. Видите, как просто сделать таблицу такой, как Вы хотите? Представьте себе все возможности, которые дает инструмент Transpose (Транспонировать).

Первый пример транспонирования таблицы:

Специальная вставка в Excel

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

Например, Вам в руки попадает вот такой шаблон (смотрите ниже), предоставленный компанией, чтобы заполнить отчёт о расходах при посещении конференции.

Специальная вставка в Excel

Однако, на конференции, которую Вы посещали, был предоставлен электронный отчёт в таком виде:

Специальная вставка в Excel

Просто скопируйте нужную информацию (в нашем случае B1:B11), поместите курсор в ячейку, в которую Вы хотите вставить эту информацию (ячейка C3 в шаблоне), нажмите Paste Special (Специальная вставка), а затем выберите опцию Transpose (Транспонировать). Вот что получится:

Специальная вставка в Excel

Отлично! Теперь вся информация выглядит единообразно, и Вы можете продолжать добавлять строки для всех совершаемых Вами поездок.

Транспонировать – кратко о главном

  1. Выберите данные.
  2. Скопируйте выбранные данные. Команда Cut (Вырезать) не позволит использовать Специальную вставку, поэтому воспользуйтесь именно командой Copy (Копировать).
  3. Поместите курсор в ячейку, в которую нужно вставить данные.

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

  1. Нажмите Paste Special (Специальная вставка). Это можно сделать 2-мя путями:
    • Щелкните правой кнопкой мыши и выберите в контекстном меню Paste Special (Специальная вставка).
    • На вкладке Home (Главная) под командой Paste (Вставить) нажмите маленький треугольник и в открывшемся меню выберите Paste Special (Специальная вставка).

    Оба способа откроют диалоговое окно Paste Special (Специальная вставка), в котором Вы найдёте множество полезных настроек.

  2. Поставьте галочку в строке опции Transpose (Транспонировать).

Удаляем гиперссылки (много и быстро)

Это было весело! Теперь давайте попробуем другую интересную функцию Специальной вставки. Этот трюк особенно полезен, когда требуется вставить текст, насыщенный гиперссылками. Гиперссылки иногда попадаются под руку в процессе работы с данными в Excel. Обратите внимание на синий подчёркнутый текст на рисунке ниже. В каждой ячейке столбца A содержится гиперссылка. Каждый раз, когда Вы кликаете по ячейке, компьютер открывает гиперссылку. Вы можете щелкать правой кнопкой мыши по каждой ячейке и выбирать команду Remove hyperlink (Удалить гиперссылку), но это займёт целую вечность. Представьте, если в Вашей таблице содержится 2000 строк и 1000 столбцов.

Специальная вставка в Excel

Вместо этого Вы можете использовать возможности Специальной вставки, чтобы удалить все эти гиперссылки разом. Готовы? Выделите все ячейки, из которых нужно удалить гиперссылки, и скопируйте их. Поместите курсор в новую ячейку.

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

Нажмите Paste Special (Специальная вставка). В появившемся одноименном диалоговом окне выберите пункт Values (Значения) и нажмите ОК. После этого все гиперссылки будут удалены, и Вы сможете переместить данные на их исходное место. Очень просто, правда? Посмотрите на рисунки ниже, там показано пошаговое выполнение этой операции.

Быстрое удаление гиперссылок – кратко о главном

  1. Выделите все ячейки, из которых требуется удалить гиперссылки.
  2. Скопируйте их.
  3. Поставьте курсор в ячейку, куда необходимо вставить скопированные данные.
  4. Нажмите Paste Special (Специальная вставка).
  5. Выберите пункт Values (Значения).
  6. Нажмите ОК.
  7. Вырежьте и вставьте ячейки в любое нужное Вам место.

Специальная вставка в Excel

Пропускаем пустые ячейки

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

Обычная команда Paste (Вставить) тут не поможет. Почему? – видно на рисунке ниже. Если Вы скопируете информацию (A6:A19) и вставите в ячейку E4, то эти приставучие пустые ячейки из столбца A будут записаны поверх данных в столбце E, которые Вы хотели бы сохранить. Не желаете ли узнать способ способный пропустить пустые ячейки?

Для этого скопируйте ячейки A5:A19, затем поместите курсор в первую ячейку области, куда необходимо вставить скопированные данные (E4). Далее нажмите Paste Special (Специальная вставка), поставьте галочку на опции Skip Blanks (Пропускать пустые ячейки) и нажмите ОК. Вуаля! Вы успешно скопировали данные из столбца A в столбец E, сохранив все нужные данные. Отличная работа! Это простой пример, но он показывает все возможности, которые открывает для Вас и Ваших таблиц инструмент Skip Blanks (Пропускать пустые ячейки).

Специальная вставка в Excel

Пропускаем пустые ячейки – кратко о главном

  1. Выберите данные, которые хотите скопировать.
  2. Скопируйте их.
  3. Поместите курсор в начальную ячейку области, в которую хотите скопировать.
  4. Нажмите Paste Special (Специальная вставка).
  5. Выберите Skip Blanks (Пропускать пустые ячейки).
  6. Нажмите ОК.

Теперь Вам известны основные принципы работы инструмента Специальная вставка и некоторые классные и супер-классные трюки. Вы можете транспонировать, удалять гиперссылки и пропускать пустые ячейки.

Оцените качество статьи. Нам важно ваше мнение:

Пропуск пустых ячеек формулой

pain2430

Дата: Среда, 31.07.2019, 13:26 |
Сообщение № 1

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

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

Сообщений: 63


Репутация:

11

±

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


Excel 2010

Добрый день! Прошу помощи вот в таком вот задании:
В столбце «C» данные полученные формулами.
Нужно чтобы в столбце «F», данные из столбца «C» поочередно выстраивались без пустых ячеек.
Нужна только формула…
Спасибо!

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

primer.xlsx
(9.4 Kb)

 

Ответить

Che79

Дата: Среда, 31.07.2019, 13:40 |
Сообщение № 2

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

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

Сообщений: 1649


Репутация:

306

±

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


2013 Win, 365 Mac

Здравствуйте. Так хотите?

Код

=ЕСЛИОШИБКА(ИНДЕКС($C$10:$C$100;НАИМЕНЬШИЙ(ЕСЛИ($C$10:$C$100<>»»;СТРОКА($C$10:$C$100)-9);СТРОКА(F1)));»»)

Формула массива (ввод Ctrl+Shift+Enter) В желтых ячейках добавил проверку вручную.

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

_243.xlsx
(9.8 Kb)


Делай нормально и будет нормально!

 

Ответить

Nic70y

Дата: Среда, 31.07.2019, 13:44 |
Сообщение № 3

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

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

Сообщений: 8136


Репутация:

1999

±

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


Excel 2010

без Ваших формул (в файле это столбец H)

Код

=ЕСЛИОШИБКА(ЕСЛИ(ИНДЕКС(A:A;НАИМЕНЬШИЙ(ЕСЛИ(A$10:A$24<>»»;СТРОКА(A$10:A$24));СТРОКА(H1)))>10;»A»;»B»);»»)

+ другие варианты

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

5508506.xlsx
(10.3 Kb)


ЮMoney 41001841029809

 

Ответить

Светлый

Дата: Среда, 31.07.2019, 13:45 |
Сообщение № 4

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

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

Сообщений: 1742


Репутация:

479

±

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


Excel 2013, 2016

Массивная формула:

Код

=ЕСЛИОШИБКА(ИНДЕКС(C:C;НАИМЕНЬШИЙ(ЕСЛИ(C$9:C$33>»»;СТРОКА($9:$33));СТРОКА(F1)));»»)

*Или так:

Код

=ЕСЛИОШИБКА(ИНДЕКС(C:C;НАИМЕНЬШИЙ(ЕСЛИ(A$9:A$33;СТРОКА($9:$33));СТРОКА(F1)));»»)

**Используя только столбец A:

Код

=ЕСЛИОШИБКА(СИМВОЛ(66-(ИНДЕКС(A:A;НАИМЕНЬШИЙ(ЕСЛИ(A$9:A$33;СТРОКА($9:$33));СТРОКА(F1)))>10));»»)


Программировать проще, чем писать стихи.

Сообщение отредактировал СветлыйСреда, 31.07.2019, 13:56

 

Ответить

pain2430

Дата: Среда, 31.07.2019, 17:52 |
Сообщение № 5

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

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

Сообщений: 63


Репутация:

11

±

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


Excel 2010

Che79, Nic70y, Светлый, огромное всем спасибо!

 

Ответить

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