KutoolsforOffice — Одно решение — пять мощных инструментов.Меньше усилий — больше результата.

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

АвторСунДата изменения

При работе с данными, распределёнными по столбцам с заголовками в виде дат, часто возникает необходимость извлечь весь столбец с одного листа и скопировать его на другой — но только тот столбец, заголовок которого совпадает с конкретной датой, указанной в другом месте вашей книги. Например, предположим, что у вас есть таблица на Лист1, где каждый заголовок столбца — это отдельная дата, а в ячейке Лист2!A1 вы указываете целевую дату. Вы хотите легко и автоматически скопировать весь столбец с Лист1, заголовок которого совпадает с датой в Лист2!A1, и вставить его в Лист3 — как показано ниже. Это типичная задача при сравнении ежедневных показателей, управлении расписаниями или извлечении данных за определённую дату для отчётов.
копирование столбца на основе значения ячейки


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

Функции Excel ИНДЕКС и ПОИСКПОЗ предоставляют эффективный способ извлечь весь столбец с исходного листа на основе конкретного значения заголовка, указанного на другом листе. Этот метод особенно полезен, когда данные должны автоматически обновляться при изменении значения ячейки, что значительно снижает необходимость в ручных корректировках или повторном копировании и вставке.

1. Выберите ячейку на целевом листе, куда нужно вставить значения столбца. Например, щёлкните по Лист3!A1. Затем введите следующую формулу:

=INDEX(Sheet1!$A1:$E1,MATCH(Sheet2!$A$1,Sheet1!$A$1:$E$1,0))
Нажмите Enter, чтобы применить формулу, затем перетащите маркер заполнения вниз на необходимое количество строк (обычно до конца строк, соответствующих Диапазон данных в)Лист1). Обратите внимание, что нули могут появляться в тех местах, где заканчивается диапазон данных.
введите формулу для копирования столбца на основе значения ячейки на другой лист

2. При необходимости удалите или отфильтруйте ячейки со значением ноль, чтобы очистить извлечённый столбец.

Примечание: В этой формуле Лист2!A1 — это ячейка с искомой датой, а Лист1!A1:E1 — диапазон заголовков для проверки. Настройте эти ссылки в соответствии с фактическим расположением и размером ваших данных. Если ваша таблица больше, просто расширьте диапазон. Кроме того, если в ваших данных есть пустые ячейки, в результате могут появиться нули — чтобы избежать этого и получить более чистый результат, рекомендуем использовать фильтры или логику с функцией ЕСЛИОШИБКА.

💡Совет: Если вы хотите быстро выделить или обработать ячейки по заданным критериям — без настройки формул, — воспользуйтесь инструментом Kutools для Excel Выбрать определенные ячейки, показанным ниже. Этот подход позволяет напрямую выделять и изменять нужные ячейки, значительно упрощая рабочий процесс как для регулярных, так и для периодических пользователей. Бесплатная пробная версия доступна на 30 дней.Скачайте здесь, чтобы попробовать прямо сейчас.

выбор определённых ячеек с помощью Kutools

Код VBA — автоматическое копирование столбца на другой лист на основе значения ячейки

Если вы часто выполняете эту задачу по извлечению столбца или предпочитаете решение, не требующее настройки формул и ручных действий при каждом изменении целевой даты, воспользуйтесь простым макросом VBA. Этот сценарий найдёт на Лист1 столбец, заголовок которого совпадает с датой из ячейки Лист2!A1, и скопирует весь столбец напрямую на Лист3. Такой подход идеально подходит для автоматизации повторяющихся рабочих процессов и работы с динамическими структурами данных.

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

1. Нажмите Alt + F11, чтобы открыть редактор Visual Basic для приложений. В окне VBA выберите Вставка > Модуль, затем вставьте следующий код в пустой модуль:

Sub CopyColumnByDate()
    Dim wsSource As Worksheet
    Dim wsDest As Worksheet
    Dim lookupSheet As Worksheet
    Dim matchDate As Variant
    Dim lastRow As Long
    Dim colNum As Long
    Dim headerRange As Range
    Dim cell As Range
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set wsSource = Worksheets("Sheet1")
    Set wsDest = Worksheets("Sheet3")
    Set lookupSheet = Worksheets("Sheet2")
    matchDate = lookupSheet.Range("A1").Value
    
    Set headerRange = wsSource.Range(wsSource.Cells(1, 1), wsSource.Cells(1, wsSource.Cells(1, wsSource.Columns.Count).End(xlToLeft).Column))
    colNum = 0
    
    For Each cell In headerRange
        If cell.Value = matchDate Then
            colNum = cell.Column
            Exit For
        End If
    Next cell
    
    If colNum > 0 Then
        lastRow = wsSource.Cells(wsSource.Rows.Count, colNum).End(xlUp).Row
        wsDest.Range("A1").Resize(lastRow, 1).Value = wsSource.Range(wsSource.Cells(1, colNum), wsSource.Cells(lastRow, colNum)).Value
        MsgBox "Data copied to Sheet3 column A!", vbInformation, "KutoolsforExcel"
    Else
        MsgBox "No matching header found.", vbExclamation, "KutoolsforExcel"
    End If
End Sub

2. Закройте редактор VBA. В Excel нажмите Alt + F8, выберите CopyColumnByDate, затем нажмите Выполнить. Данные из столбца с совпадающей датой на Лист1 будут скопированы в столбец A листа Лист3.

Совет: Если ваши заголовки начинаются не с первой строки, скорректируйте номера строк в коде. Если вы хотите вставить данные в другой начальный столбец, измените Range("A1") соответствующим образом. Если вы часто используете этот макрос, назначьте его кнопке для удобного доступа.

Возможные ошибки: Если появляется сообщение «Совпадающий заголовок не найден», убедитесь, что дата в Лист2!A1 точно совпадает с форматом даты в строке заголовков Лист1.


Другие встроенные методы Excel — использование фильтра для выделения и копирования столбца

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

1. Перейдите на Лист1 и выделите строку заголовков (например, строку 1). Щёлкните Данные > Фильтр, чтобы добавить раскрывающиеся списки к каждому заголовку.

2. Щёлкните стрелку фильтра в строке заголовков и снимите выделение со всех столбцов, кроме того, заголовок которого совпадает с датой в Лист2!A1. Если дат несколько, воспользуйтесь полем поиска в меню фильтра, чтобы быстро найти нужное значение.

3. Выделите видимый столбец под совпадающим заголовком и нажмите Ctrl + C, чтобы скопировать.

4. Перейдите на Лист3 и щёлкните по нужной начальной ячейке (например, A1), затем нажмите Ctrl + V, чтобы вставить.

Примечания: Метод фильтрации полностью ручной и не обновляется автоматически при изменении даты в Лист2!A1. Этот подход идеален для разовых извлечений данных и быстрого анализа, когда автоматизация не требуется.

Преимущества: Не требует формул или программирования; идеален для быстрых визуальных задач.
Недостатки: Трудоёмок при частом повторении; подвержен ошибкам из-за неточного выделения столбцов.

снимок экрана kutools for excel ai

Раскройте магию Excel с помощью KUTOOLS AI

  • Интеллектуальное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это доступно через простые команды.
  • Пользовательские формулы: создавайте индивидуальные формулы для оптимизации рабочих процессов.
  • Программирование на VBA: Пишите и внедряйте код VBA легко и без усилий.
  • Анализ формул: Легко разбирайтесь даже в самых сложных формулах.
  • Перевод текста: Ломайте языковые барьеры прямо в ваших таблицах.
Расширьте возможности Excel с помощью инструментов на базе ИИ.Скачать сейчаси ощутите эффективность, как никогда раньше!

Лучшие инструменты повышения продуктивности в Office

🤖KUTOOLS AI Помощник: Преобразуйте Анализ данных с помощью:Интеллектуального выполнения   |  Генерации кода|  Создания пользовательские формулы  |  Анализа данных и построения диаграмм|  Вызова Расширенные функции
Популярные функции:Поиск, выделение или Отметить дубликаты   |  Удалить пустые строки   |  Объединить столбцы или ячеек без потери данных   |  Округление без использования формул
Супер ПОИСК:VLookup по нескольким критериям  |  VLookup по нескольким значениям  |   VLookup по нескольким листам   |   Распознавание нечетких соответствий
Расширенный раскрывающийся список:Быстрое создание выпадающего списка   |  Зависимый выпадающий список   |  Выпадающий список с множественным выбором
Управление столбцами:Добавление заданного количества столбцов|Перемещение столбцов|Переключение видимости скрытых столбцов|Сравнение диапазонов и столбцов
Избранные функции:Сетка фокусировки   |  Просмотр дизайна   |Улучшенная строка формулы   | Управление рабочими книгами и листами   |  Библиотека ресурсов(автотекст)|  Выбор даты   |  Объединить листы  |  Шифрование/Расшифровать ячейки   | Отправка писем по списку   |  Супер фильтр   |   Специальный фильтр(Фильтр ячеек с жирным шрифтом/курсив/зачёркивание…) …
Лучшие наборы инструментов 15:12 Текстовыеинструменты(Добавить текст,Удалить определенные символы, …)|   50+Типыдиаграмм(Диаграмма Ганта, …)|   40+ Практические формулы(Рассчитать возраст на основе даты рождения, …)|   19 Инструментывставки(Вставить QR-код,Вставка изображения по пути, …)|   12 Инструментыпреобразования(Преобразовать в слова,Конвертация валют, …)|   7 Объединить и разделитьИнструменты(Расширенное объединение строк,Разделить ячейки, …)|… и многое другое
Используйте Kutools на предпочитаемом языке — поддержка английского, испанского, немецкого, французского, китайского и ещё 40+ языков!

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


Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу

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

Все надстройки Kutools — один установщик

Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.

ExcelWordOutlookTabsPowerPoint
  • Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
  • Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
  • Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
  • 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
  • Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек