Как в экселе скопировать столбец в другой столбец
Перейти к содержимому

Как в экселе скопировать столбец в другой столбец

  • автор:

Превращение строк в столбцы и обратно

Хотим, упрощенно говоря, повернуть таблицу на бок, т.е. то, что располагалось в строке — пустить по столбцу и наоборот:

Способ 1. Специальная вставка

Выделяем и копируем исходную таблицу (правой кнопкой мыши — Копировать). Затем щелкаем правой по пустой ячейке, куда хотим поместить повернутую таблицу и выбираем из контекстного меню команду Специальная вставка (Paste Special) . В открывшемся диалоговом окне ставим галочку Транспонировать (Transpose) и жмем ОК. Минусы : не всегда корректно копируются ячейки с формулами, нет связи между таблицами (изменение данных в первой таблице не повлияет на вторую). Плюсы : в транспонированной таблице сохраняется исходное форматирование ячеек.

Способ 2. Функция ТРАНСП

Выделяем нужное количество пустых ячеек (т.е. если, например, исходная таблица была из 3 строк и 5 столбцов, то выделить обязательно нужно диапазон из 5 строк и 3 столбцов) и вводим в первую ячейку функцию ТРАНСП (TRANSPOSE) из категории Ссылки и массивы (Lookup and Reference): После ввода функции необходимо нажать не Enter, а Ctrl+Shift+Enter, чтобы ввести ее сразу во все выделенные ячейки как формулу массива . Если раньше не сталкивались с формулами массивов, то советую почитать тут — это весьма экзотический, но очень мощный инструмент в Excel. Плюсы : между таблицами сохраняется связь, т.е. изменения в первой таблице тут же отражаются во второй. Минусы : не сохраняется форматирование, пустые ячейки из первой таблицы отображаются в виде нулей во второй, нельзя редактировать отдельные ячейки во второй таблице, поскольку формулу массива можно менять только целиком.

Способ 3. Формируем адрес сами

  • Функция АДРЕС(номер_строки; номер_столбца) — выдает адрес ячейки по номеру строки и столбца на листе, т.е. АДРЕС(2;3) выдаст, например, ссылку на ячейку C2.
  • Функция ДВССЫЛ(ссылка_в_виде_текста) — преобразует текстовую строку, например, «F3» в настоящую ссылку на ячейку F3.
  • Функции СТРОКА(ячейка) и СТОЛБЕЦ(ячейка) — выдают номер строки и столбца для заданной ячейки, например =СТРОКА(F1) выдаст 1, а =СТОЛБЕЦ(А3) выдаст 3.

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

=ДВССЫЛ(АДРЕС(СТОЛБЕЦ(A1);СТРОКА(A1)))

в английской версии Excel это будет =INDIRECT(ADDRESS(COLUMN(A1),ROW(A1)))

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

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

Плюсы : сохраняются связи между таблицами, можно легко вносить изменения во вторую таблицу.

Минусы : форматирование не сохраняется, но его можно легко воспроизвести Специальной вставкой (вставить только Формат с флажком Транспонировать

Копирование строк и столбцов

Иногда вам нужно скопировать строки и столбцы на листе, не копируя весь лист. С помощью Aspose.Cells можно копировать строки и столбцы внутри или между книгами.

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

Копирование строк и столбцов с помощью Microsoft Excel

  1. Выберите строку или столбец, которые вы хотите скопировать.
  2. Чтобы скопировать строки или столбцы, щелкнитеКопировать наСтандарт панели инструментов или нажмитеCTRL+С.
  3. Выберите строку или столбец ниже или справа от того места, куда вы хотите скопировать свой выбор.
  4. При копировании строк или столбцов щелкнитеСкопировано Cells наВставлять меню.

Если вы нажметеВставить наСтандарт панель инструментов или нажмитеCTRL+** V** вместо нажатия команды на**В меню «Вставка**» любое содержимое ячеек назначения заменяется.

Копирование одной строки

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

копиряд принимает следующие параметры:

  • источникCellsобъект,
  • индекс исходной строки и
  • индекс строки назначения.

Используйте этот метод, чтобы скопировать строку на листе или на другой лист.копиряд работает аналогично Microsoft Excel. Так, например, вам не нужно явно задавать высоту строки назначения, это значение также копируется.

В следующем примере показано, как скопировать строку на листе. Он использует шаблон файла Excel Microsoft и копирует вторую строку (вместе с данными, форматированием, комментариями, изображениями и т. д.) и вставляет ее в 12-ю строку на том же рабочем листе.

Следующий вывод генерируется при выполнении приведенного ниже кода.

Строка копируется с высочайшей степенью точности и аккуратности

дело:изображение_альтернативный_текст

При копировании строк важно отметить связанные изображения, диаграммы или другие объекты рисования, так как это то же самое с Microsoft Excel:

  1. Если индекс исходной строки равен 5, изображение, диаграмма и т. д. копируются, если они содержатся в трех строках (индекс начальной строки равен 4, а индекс конечной строки равен 6).
  2. Существующие изображения, диаграммы и т. д. в строке назначения не будут удалены.

Копирование нескольких строк

Вы также можете скопировать несколько строк в новое место назначения, используяCells.copyRows, который принимает дополнительный параметр типа integer для указания количества копируемых исходных строк.

Ниже приведен снимок входной электронной таблицы, содержащей 3 строки данных, тогда как приведенный ниже фрагмент кода копирует все 3 строки в новое место, начиная с 7-й строки.

дело:изображение_альтернативный_текст

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

дело:изображение_альтернативный_текст

Копирование одного столбца

Aspose.Cells обеспечиваеткопиколонн методCellsclass этот метод копирует все типы данных, включая формулы (с обновленными ссылками) и значения, комментарии, форматы ячеек, скрытые ячейки, изображения и другие объекты рисования из исходного столбца в целевой столбец.

копиколонн принимает следующие параметры:

  • источникCellsобъект,
  • индекс исходного столбца и
  • индекс столбца назначения.

Использоватькопиколонн способ копирования столбца на лист или на другой лист.

В этом примере столбец копируется с листа и вставляется на лист в другой книге.

Столбец копируется из одной книги в другую

дело:изображение_альтернативный_текст

Копирование нескольких столбцов

Похожий наCells.copyRows, API-интерфейсы Aspose.Cells также предоставляютCells.copyColumns для копирования нескольких исходных столбцов в новое место.

Вот как исходная и результирующая электронные таблицы выглядят в Excel.

дело:изображение_альтернативный_текст

дело:изображение_альтернативный_текст

Вставка строк/столбцов с параметрами вставки

Aspose.Cells теперь обеспечиваетПараметры вставки при использовании функцийКопиРовс иКопиКолонкс. Это позволяет установить соответствующие параметры вставки, аналогичные Excel.

Перемещение и копирование ячеек и их содержимого

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

Ячейки в Excel перемещаются и копируются вместе с формулами, итоговыми значениями, форматом и примечаниями.

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

Браузер не поддерживает видео. Установите Microsoft Silverlight, Adobe Flash Player или Internet Explorer 9.

Перемещение ячеек путем перетаскивания

указатель перемещения

  1. Выделите ячейки или диапазон ячеек, которые требуется переместить или скопировать.
  2. Наведите указатель мыши на границу выделенной области.
  3. Когда указатель примет вид указателя перемещения

Перемещение ячеек с помощью команд «Вырезать» и «Вставить»

Вырезание

  1. Выделите ячейку или диапазон ячеек.
  2. На вкладке Главная нажмите кнопку Вырезать

Вставка

или нажмите клавиши CTRL+X.

  • Выделите ячейку, в которую вы хотите переместить данные.
  • На вкладке Главная нажмите кнопку Вставить

    Копирование ячеек с помощью копирования и вставки

    1. Выделите ячейку или диапазон ячеек.
    2. Нажмите кнопку Копировать или клавиши CTRL+C.
    3. Нажмите кнопку Вставить или клавиши CTRL+V.

    Дополнительные сведения

    Вы всегда можете задать вопрос эксперту в Excel Tech Community или получить поддержку в сообществах.

    Как в экселе скопировать столбец в другой столбец

    Добрый день
    Помогите пожалуйста
    Есть 2 столбца, в одном данные повторяются, в другом нужно выборочно брать данные из первого столбца и БЕЗ пробелов продолжать ряд
    Не могу сообразить как написать формулу или как копировать, протягивать?
    при копировании или протягивании эксель учитывает все пробелы из первого столбца (в примере А) , а мне нужно чтобы второй столбец (в примере H) выборочно забирал данные из первого столбца и БЕЗ пробелов продолжался
    Пока получается только вручную, но данных очень много и набивать вручную долго и сложно
    Эксель 2010
    Спасибо

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

    • Копирование столбцов вопрос.xlsx (11.75 КБ)

    Пользователь
    Сообщений: 531 Регистрация: 14.08.2017
    26.02.2018 07:33:33

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

    Пользователь
    Сообщений: 13 Регистрация: 26.02.2018
    26.02.2018 07:49:25

    Цитата
    DopplerEffect написал:
    если вам нужно отфильтровать данные в первом столбце и вставить их во второй, то вставьте их вначале на другой лист, а потом перенесите на ваш, но уже без фильтра.

    идея с фильтрование интересна, сам я почему то не догадался, попробую

    Цитата
    DopplerEffect написал:
    Не совсем понял, какие пробелы учитывает эксель из первого столбца? И не совсем понятно до конца что нужно получить,

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

    Пользователь
    Сообщений: 531 Регистрация: 14.08.2017
    26.02.2018 08:06:50
    А просто через ВПР не подходит решение? Во вложении.
    Прикрепленные файлы

    • Копирование столбцов вопрос.xlsx (17.2 КБ)

    Пользователь
    Сообщений: 13 Регистрация: 26.02.2018
    26.02.2018 08:15:21

    нет, фильтрование здесь не поможет, потому что прежде чем отфильтровать, нужно все равно сначала занести формулы вручную
    Попробую еще раз обьяснить задачу
    Итак — есть столбец А в который занесены данные в ячейки от А1 до А15 (формулы)
    я копирую эти ячейки и вставляю их начиная от А16 до А30 или выделяю их и цепляю мышкой и тяну
    и все формулы копируются в соответсвии с правилами Эксель, т.е. А16=А1, А17=А2 и т.д

    далее в столбе H мне нужны только 3 ячейки H1 H2 H3
    в них я заношу выборочно данные из столбца А
    дальше я копирую все 3 ячейки и вставляю их по аналогии (или опять же тяну мышкой) начиная с Н4
    и вот мне нужно чтобы в H4 было = A16, в Н5=А28 и в Н6= А26 и далее по аналогии
    а у меня автоматом ставит в Н4=А4 в Н5=А5 и т.д.
    т.е. первый столбец А имеет 15 ячеек которые повторяются, а второй столбец Н имеет 3 ячейки которые тоже повторяются, но в них выборочные данные из столбца А
    (а не подряд)

  • Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *