Вам нужно написать программу или скрипт, чтобы соединить строки общим ключом (столбец 1).
Если вы не знаете VBA, вы можете использовать простой скрипт ruby, чтобы выполнить объединение данных из CSV-экспорта рабочей таблицы.
Следуй этим шагам:
- Экспортируйте свой лист в формате CSV.
- Затем запустите приведенный ниже скрипт для данных, создав новый выходной файл в формате CSV.
- Импортируйте файл CSV-вывода в Excel.
Данные должны выглядеть примерно так:
$ cat joiner-data.csv
Key,Data
"1234",eggs
"1234",bacon
"1234",toast
"4321","Orange Juice"
Ниже приведен скрипт ruby для объединения данных по ключу столбца 1.
Кстати, этот код не заботится о том, являются ли данные ключа числовыми или нет - он объединит данные на основе любого значения ключа.
#!/usr/bin/env ruby
# joiner.rb input >output
# read CSV data, with key in column one
# output each key once, with all associated data joined by '-'
require 'csv'
records = {}
input = ARGV.shift
CSV.foreach(input, :headers => true, :return_headers => false) do |row|
data = row.fields
key = data.shift
records[key] ||= [] # ensure new keys start with an empty array
records[key] += [data] # append the record data
end
# output the record keys in ascending order, with the data associated with each key
CSV { |csv| records.keys.sort.each{|k| csv << [k,records[k].join('-')]}}
exit
Вот пример прогона с использованием приведенных выше данных в формате CSV:
$ ./joiner.rb joiner-data.csv
1234,eggs-bacon-toast
4321,Orange Juice
Этот вывод должен быть помещен в файл, который может быть импортирован обратно в Excel. Как это:
$ ./joiner.rb joiner-data.csv >joined-data.csv
Теперь импортируйте файл joined-data.csv
.
Надеюсь это поможет.