Как автоматически объединить две таблицы Excel с одним и тем же первым столбцом?

372
koreamaniac101

Прежде чем кто-либо скажет, что эта проблема уже решена ранее, я ищу автоматическую (макро, программу и т. Д.) Систему, которая может обеспечить следующее:

  • Объединение нескольких рабочих книг (отдельных файлов, а не листов) по общему столбцу.

Первый столбец одинаков для всех файлов. Тем не менее, существует 500 отдельных файлов CSV, каждый из которых содержит около 7000 строк

Мне известны функция VLOOKUP (), функция Consolidate и такие программы, как Kutools и Ablebits. Тем не менее, ни один из них, кажется, не подходит для моей цели создания единой рабочей книги, в которой все эти файлы объединены общим столбцом.

Кто-нибудь знает макрос VBA или другую программу, которая может мне помочь с этим?

РЕДАКТИРОВАТЬ: Ниже приведены ссылки на два из 500 файлов:

1. https://docs.google.com/spreadsheets/d/1rRdNS9K6QYjfH2_P9wmR5YS0-Ectl1SnVn2SfFz9UUY/edit?usp=sharing

2. https://docs.google.com/spreadsheets/d/13Dmc6hKHCG4RBF2an3NZ7nux5ffI5F5cigbz5fFyaPI/edit?usp=sharing

0
Сколько столбцов в ваших CSV-файлах? Можете ли вы предоставить образец ваших данных? Является ли решение Python приемлемым (дюжина строк Python + Pandas должны сделать свое дело ...)? agtoever 5 лет назад 0
Python отлично в порядке! Каждый файл .csv имеет только два столбца. koreamaniac101 5 лет назад 0
Таким образом, вывод должен быть CSV-файл с ~ 7000 строк и ~ 500 + 1 столбцов? agtoever 5 лет назад 0
Точно. Кроме того, я отредактировал оригинальное сообщение, чтобы включить два из 500 файлов. Как видите, первые столбцы каждого файла идентичны. koreamaniac101 5 лет назад 0

1 ответ на вопрос

-1
agtoever

В оболочке Linux объедините paste и awk .

paste -d, *.csv | awk -F, ' '

Команда вставки помещает все столбцы всех файлов рядом друг с другом. Скрипт awk удаляет все нечетные столбцы, начиная с третьего.

Я следовал инструкциям и загрузил Ubuntu на свой компьютер. Я запустил оболочку и переместил каталог (команда cd) в интересующий файл. Однако, когда я выполнил команду, которую вы опубликовали, я получаю следующую ошибку: paste: '* .csv': такого файла или каталога нет. Я сделал команду ls, чтобы убедиться, что все мои csv-файлы есть. koreamaniac101 5 лет назад 0
Неважно, я исправил проблему. Все мои расширения файлов были показаны как .CSV, а не .csv. Команда чувствительна к регистру расширения файла. Мой последний вопрос: где сейчас находится новый файл? Команда выполнена отлично, но я не вижу новый файл. koreamaniac101 5 лет назад 0
Вывод отображается в консоли. Перенаправьте его в файл, добавив `> output.txt`, чтобы записать его в файл` output.txt`. agtoever 5 лет назад 0
Спасибо, но я надеялся получить его в файле CSV. Конечная цель - получить файл .csv (или xlsx), который будет содержать приблизительно 7000 столбцов и 500 строк (по одной для каждого из вторых столбцов файлов). Я перенаправил команду в CSV-файл, но он не работал должным образом и показывал только один большой столбец. koreamaniac101 5 лет назад 0

Похожие вопросы