Как перенести данные из одной таблицы excel в другую
Имеется: 2 файла Excel. В одном файле находится таблица с данными:
Ручка шт 100 150р
Ручка шт 150 180р
Ручка шт 200 150р
Ручка шт 180 180р
и т.д.
Надо перенести из этой таблицы в другую только те данные которые совпадают по названию при этом если у них разная цена, перенести в 2 строки с объединённым количеством. Итог:
Ручка шт 300 150р
Ручка шт 330 180р
Помогите с формулой попробовал ВПР и ИНДЕКС не помогло.
Заранее спасибо!
Пользователь
Сообщений: 220 Регистрация: 09.04.2021
09.01.2022 20:53:08
Если ексель свежий и работает ПРОСМОТРХ , то можно попробовать следующую комбинацию:
=ПРОСМОТРХ(1;(Название1=Названию2)*(Цена1<>Цена2);Название2;0)
Как-то так. Название1 и остальное, это адреса соотвесвующих ячеек
если функция ПРОСМОТРХ недоступна, то сделать тоже самое через ИНДЕКС/ПОИСКПОЗ
Вот тут вот почитайте , раздел: Д войной ВПР при помощи ИНДЕКС + ПОИСКПОЗ
Как перенести данные из одной таблицы excel в другую
Перенос данных с одной таблицы в другую, как перенести данные с одной таблицы в другую, расположив по порядку
Пользователь
Сообщений: 148 Регистрация: 08.05.2015
23.12.2015 20:43:31
Здравствуйте!
Столкнулся с проблемой, не могу разобраться, прошу помощи:
дело в том, что нужно перенести данные с одной таблицы в другую, но чтобы в другой данные уже располагались по порядку. По возрастанию по времени. Первые ячейки должны иметь формат ячеек «время», в обоих таблицах.
Прикрепленные файлы
- Книга (вопрос).xlsx (11.77 КБ)
- Вопрос.jpg (80.01 КБ)
Пользователь
Сообщений: 11833 Регистрация: 17.01.2014
ПОЛ: МУЖСКОЙ | Win10x64, MSO2019x64
23.12.2015 21:16:51
Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
Пользователь
Сообщений: 148 Регистрация: 08.05.2015
23.12.2015 22:10:44
JayBhagavan,
первая ячейка просто выстраивается по порядку (во 2 таблице), но нужно чтобы и другие ячейки переносились во вторую ячейку с тем же текстом.
То есть чтобы хаос в 1 таблице, переделать во второй по порядку.
Пользователь
Сообщений: 4695 Регистрация: 22.12.2012
23.12.2015 22:13:46
эмм. а просто сортировка по столбцу время — не подойдет?
Кому решение нужно — тот пример и рисует.
Пользователь
Сообщений: 148 Регистрация: 08.05.2015
23.12.2015 22:18:43
например стоит в первой таблице:
1.20 работа 2
0.00 отдых 1
1.00 работа 1
Во второй нужно чтобы это же и было, но по порядку, так:
0.00 отдых 1
1.00 работа 1
1.20 работа 2
То есть вся таблица должна заполняться, а не только первая колонка со временем.
Пользователь
Сообщений: 4695 Регистрация: 22.12.2012
23.12.2015 22:22:41
Ну вы просто копируете из первой таблицы значения как есть во вторую. (или прямо на месте сортируете)
Потом выделяете всю вторую таблицу с заголовками. Потом п.меню Данные — Сортировка. Там указываете, что данные содержат заголовки и задаете столбцы, по которым надо сортировать. И еще задаете как сортировать (от наименьшего к наибольшему, например). И все.
Кому решение нужно — тот пример и рисует.
Пользователь
Сообщений: 148 Регистрация: 08.05.2015
23.12.2015 22:25:43
Пытливый,
На примере, в файле что добавил сможете показать, хотя бы в одной из строк?
Пользователь
Сообщений: 4695 Регистрация: 22.12.2012
23.12.2015 22:29:31
А что там показывать? Вы попробуйте в файле — как я расписал: первую таблицу скопировать на место второй. Потом выделить вторую. Потом сортировка и задайте столбец, по которому сортировать тот, который содержит время.
Кому решение нужно — тот пример и рисует.
Пользователь
Сообщений: 148 Регистрация: 08.05.2015
23.12.2015 22:37:57
Пытливый,
Всё сделал как Вы сказали.
————-
Всё равно это не то, если в первую теперь вписать другие цифры, они во вторую не переносятся автоматом, придётся опять вручную менять-это не совсем то что нужно
Изменено: arskat5 — 24.12.2015 00:16:42
Пользователь
Сообщений: 4695 Регистрация: 22.12.2012
23.12.2015 22:49:47
Тогда не указывайте, что таблица содержит заголовки (снимите галку при сортировке). Будет сортировать и 1 стоку тоже.
Я предложил, кмк, довольно простой для пользователя способ периодически наполнять 2 таблицу.
Если надо автоматом — то либо макрос писать, либо формулой, как выше предложили.
Макрос можно написать — а если что-то поменяется в структуре данных — скорректировать под изменение макрос сумеете?
Кому решение нужно — тот пример и рисует.
Пользователь
Сообщений: 148 Регистрация: 08.05.2015
23.12.2015 22:55:14
Пытливый,
С макросом нет.
Мне бы формулу. Например по формуле выше, там первый столбец выстраивается — теперь бы формулу чтобы и другие 2 столбца подтянуть.
———-
Получается сделать такое не вариант? никто не может подсказать?
Изменено: arskat5 — 24.12.2015 00:15:51
Пользователь
Сообщений: 148 Регистрация: 08.05.2015
24.12.2015 10:30:41
Подскажите пожалуйста формулу для 4-х ячеек во 2-ой таблице.
Есть вот такая вот формула для 2-го столбца (во 2-ой таблице):
=ИНДЕКС(B8:E14;G8;2)
но она тут не работает, думаю из-за того что формат ячейки «время», а не «общее».
Может её как нибудь переделать? или придумать что то в этом духе?
Пользователь
Сообщений: 148 Регистрация: 08.05.2015
24.12.2015 14:32:46
Блин, блин, блин — получилось.
Мучился, мучился, а оказалось всё просто. Не пойму, неужели те кто так сильно в Эксели тут шарит не смогли подсказать это?
В общем вот решение:
1) В таблице №2 в графе «время» выставить правильное расположение времени вручную.
2) В таблице №2 во 2-ой графе использовать формулу: =ВПР(G8;B8:C14;2;0)
3) В таблице №2 в 4-ой графе использовать формулу: =ВПР(G8;B8:E14;4;0)
далее всё просто, в формуле менять первую ячейку по возрастанию.
Прикрепленные файлы
- Книга (вопрос).xlsx (12.7 КБ)
Автоматический перенос данных из одной таблицы в другую в Excel
Вот три способа автоматического переноса данных с одного листа Excel на другой.
Первый, самый простой и примитивный способ связи двух таблиц на разных листах документа — вставка данных при помощи опции специальной вставки.
Давайте посмотрим шаг за шагом, как соединить две таблицы.
Первый шаг.
вам необходимо выбрать таблицу, данные из которой будут переведены во вторую таблицу.
Второй шаг.
Скопируйте информацию, нажав ctrl + C или вызвав контекстное меню правой кнопкой мыши и нажав на пункт меню «Копировать»
Третий шаг.
Перейдите на лист документа «Excel», в который вы планируете переводить информацию из первой таблицы.
Четвертый шаг.
Установите курсор в первую ячейку (вверху слева) таблицы и выберите пункт «Вставить ссылку» в меню «Вставить». В некоторых версиях Excel этот элемент находится в меню Специальная вставка
После вставки ссылки нужно отформатировать внешний вид ячеек — привести их в правильный вид.
Результат вставки ссылки
Второй способ переноса данных из одной таблицы в другую — это использование сводных таблиц в программе «Excel».
При использовании этого метода сводная таблица сама играет роль второй таблицы («получатель.
Как обновить сводную таблицу
Когда вы щелкаете правой кнопкой мыши сводную таблицу и выбираете элемент «Обновить», сводная таблица автоматически переносит все данные из связанного информационного массива («Донорские таблицы»).
Как создавать сводные таблицы в Excel подробно описано в статье:
Как делать сводные таблицы в программе «Excel» и для чего они нужны.
Третий способ самый эффективный и наиболее автоматизированный — это использование меню надстройки «Power Query».
Однако следует отметить, что этот метод подходит только для пользователей Excel 2016 и пользователей Excel 2013 и более поздних версий с установленной надстройкой Power Query».
Смысл способа в следующем:
вам нужно открыть вкладку Power Query. В разделе «Данные Excel» нажмите кнопку «Из таблицы» (значок».
Из таблицы — Power Query
Далее вам нужно выбрать диапазон ячеек, из которого вы хотите «извлечь» информацию, и нажать «ОК».
Источник данных для Power Query
После выбора области данных появится окно для настройки внешнего вида новой таблицы. В этом окне вы можете настроить порядок столбцов и удалить ненужные столбцы.
После настройки вида таблицы нажмите кнопку «Закрыть и загрузить»
Результирующая таблица обновляется щелчком правой кнопкой мыши по названию нужного запроса в правой части листа (список «Запросы на книги»). После щелчка правой кнопкой мыши в контекстном меню выберите пункт «Обновить»
Перенос и расчет данных из одной таблицы Excel в другую Python
Нашел как перенести данные из одного столбца таблицы в другую с помощью openpyxl:
import openpyxl import pandas as pd book = openpyxl.Workbook() book.remove(book.active) sheet = book.create_sheet('Result1') book.save('Задание1.xlsx') wb1 = openpyxl.load_workbook('ФИО.xlsx') ws1 = wb1['Contracts'] wb2 = openpyxl.load_workbook('Задание1.xlsx') ws2 = wb2['Result1'] target_cell_num = 1 for i,cell in enumerate(ws1['A']): ws2[f'A'] = cell.value wb2.save(filename='Задание1.xlsx')
А как посчитать данные по исходным столбцам не понимаю. Направьте, пожалуйста, на верный путь
вот исходник excel: ID ФИО: 1234567890 9876543210 7894561230 6543219870 5678941230 8527419630 2058794612 3021456789 4178520369 9954786302 Атрибут A да нет нет да нет нет да нет да нет Атрибут B нет нет да да да нет нет нет да да
