В excel, как я могу автоматизировать заполнение листа на основе условий другого листа?

#excel #spreadsheet

Вопрос:

Есть ли в Excel способ скопировать содержимое одного столбца на другой лист на основе определенных значений в другом столбце.

У меня есть данные, которые выглядят так:

Лист1: введите описание изображения здесь

Лист2:

введите код здесь

Я хотел бы скопировать столбец A листа 1 непосредственно в столбец A листа 2, но только в том случае, если значение в столбце B равно Y.

Я пробовал использовать функцию сопоставления, но не уверен, как это лучше всего сделать. Есть ли у меня способ добиться этого?

Мой желаемый результат таков:

на листе 3 показаны листы 1 и 2, объединенные на основе значений столбцов на листе 1

Комментарии:

1. Ваш объединенный лист 3, как мне кажется, не фильтруется по категории занятых (т. Е. x.1.c все еще там, несмотря на то, что в столбце B есть n). Предназначено ли это для удаления на листе 3?

2. Кроме того, добро пожаловать в Stack Overflow! (Извините, не заметил в моем первом комментарии) У меня есть несколько дополнительных вопросов: если он предназначен для фильтрации, как вы хотите, чтобы лист 2 вел себя? Планируете ли вы, чтобы это было одноразовое слияние, или оно автоматически обновлялось по мере изменения значений на листе 1? Как насчет столбцов даты и типа на листе 2? Собираетесь ли вы помещать статические значения в эти столбцы?

3. @Chronicide я намерен, чтобы лист 2 автоматически менялся по мере изменения значений на листе 1. Спасибо, что заметили, что в моем нужном столбце x.1.c все еще есть, это была ошибка, и ее там не должно было быть. Я буду помещать статические значения в другие столбцы вручную.

4. @Waldof99 Спасибо, что ответили на мои вопросы. Проблема, которую я вижу в предлагаемом вами рабочем процессе, заключается в том, что вы будете смешивать динамические значения со статическими. Например, что произойдет с листом 2, если вы измените букву Y на букву N, когда кто-то уйдет? Лист 2 удалит строку из столбцов A и B и оставит статические значения на месте. A и B сдвинулись бы вверх и стали несинхронизированными со значениями в C и D. Я думаю, что возможным решением было бы иметь один лист со всеми статическими значениями и включить фильтры. Затем вы можете отфильтровать, чтобы показать только те строки с буквой Y в столбце B. Будет ли это работать?

5. @Chronicide Большое вам спасибо за ваш комментарий. Я понимаю, почему это может вызвать проблему. В этом наборе данных значения на первом листе не изменятся с Y/N, но они могут быть пустыми, а затем иметь значение Y или N. Приведет ли это также к тому, что листы будут несинхронизированы? Пожалуйста, приведите примеры того, как я могу разместить фильтр в своей электронной таблице, поскольку я новичок в Excel. Спасибо

Ответ №1:

Как обсуждалось в комментариях, @Waldorf99 хотел создать второй рабочий лист, на котором автоматически отображался бы отфильтрованный список с первого листа. Я могу придумать несколько способов сделать это (на ум приходят формулы массива или сводные таблицы). Проблема со смешиванием динамических столбцов со статическими значениями заключается в том, что статические значения будут отделены от динамических.

В исходном примере строки могут иметь пустое значение в столбце условие на первом листе, а затем могут быть присвоены Y или N позже. Если буква Y назначена строке в середине других строк, отфильтрованный лист сдвинет существующие строки вниз, чтобы освободить место. Статические значения останутся там, где они были, и будут сняты. Чтобы продемонстрировать:

перед редактированием на листе 1

Если приведенное выше изображение является исходным состоянием листов 1 и 2…

после редактирования на листе 1

…добавление y рядом с x.1.c приведет к тому, что два столбца A и B строки 2 будут смещены вниз, но столбцы C и D останутся позади (поскольку они статичны и никоим образом не связаны с первыми двумя столбцами).

Одна вещь, которая может работать так, как вы хотите, — это фильтры. У вас будет только один лист со всеми данными, введенными вручную. Затем вы можете добавить фильтры и изменить их, чтобы при необходимости временно скрывать строки.

Для добавления и использования фильтров:

Шаг 1

  1. Начните с ваших данных на одном листе…

Шаг 2

  1. Выделите свои данные…

Шаг 3

  1. На вкладке Главная выберите «Форматировать как таблицу» и выберите любой стиль…

Шаг 4

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

Результаты

Результаты представляют собой таблицу, в которой отображаются только строки с буквой «Y».

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

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

В Интернете есть тонны ресурсов таблиц Excel, и это довольно полезный инструмент в Excel.

Надеюсь, это достигнет того, что вы искали.

Комментарии:

1. Большое вам спасибо за ваш подробный ответ! Это блестяще сработало так, как я и хотел