2013-05-10 2 views
-1

Используя Microsoft Excel 2010, у меня есть таблица, содержащая данные из 5 различных файлов данных (каждая из которых имеет 14 столбцов, а значит, и 70 столбцов). Что мне нужно сделать, так это сортировать эти столбцы: 1., 15., 29., 43., 57., 2., 16., ... и т. Д.Как обменять несколько столбцов

В принципе, мне нужны первые столбцы из 5 файлов данных в строке, затем вторые столбцы и т. Д. Есть ли способ в Excel, как написать эту последовательность? Я попробовал заменить, адрес и косвенный, но без каких-либо результатов. Я могу написать его вручную, но так как мне это нужно с разными таблицами, я подумал, что может быть полезно иметь для него фактическую команду.

+0

В каком формате находятся файлы данных? Покажите нам, что вы пробовали, и может быть способ направлять вас на правильный курс. –

ответ

1

Start, используя следующую формулу в вашей окончательной таблице:

=INDEX({"Sheet1";"Sheet2";"Sheet3";"Sheet4";"Sheet5"},MOD(COLUMN()-1,5)+1) 

Если вставить эту формулу на каждой колонке вам окончательные таблицы, это будет цикл из Sheet1 в Sheet5 из колонки A в E и т.д. Вы укажите имя ваших файлов и целевую таблицу электронной таблицы, и это послужит основой для ссылки на формулу.

Формула работает следующим образом: с по модулю применяется на значении индекса COLUMN, мы получаем число от 1 до 5, которые используются INDEX, чтобы получить один элемент из constant array.

Теперь, когда мы получаем базу велосипедного через электронные таблицы, нам нужно теперь группа из 5 столбцов А, затем 5 столбцов B, и т.д. Мы используем это:

=QUOTIENT(COLUMN()-1, 5)+1 

Теперь мы можем объединить их с ADDRESS:

=ADDRESS(ROW(),QUOTIENT(COLUMN()-1, 5)+1,1,1,INDEX({"Sheet1";"Sheet2";"Sheet3";"Sheet4";"Sheet5"},MOD(COLUMN()-1,5)+1)) 

Если вставить и продолжить формулу на диапазон A1: J3, вы получите эти адреса:

Sheet1!$A$1 Sheet2!$A$1 Sheet3!$A$1 Sheet4!$A$1 Sheet5!$A$1 Sheet1!$B$1 Sheet2!$B$1 Sheet3!$B$1 Sheet4!$B$1 Sheet5!$B$1 
Sheet1!$A$2 Sheet2!$A$2 Sheet3!$A$2 Sheet4!$A$2 Sheet5!$A$2 Sheet1!$B$2 Sheet2!$B$2 Sheet3!$B$2 Sheet4!$B$2 Sheet5!$B$2 
Sheet1!$A$3 Sheet2!$A$3 Sheet3!$A$3 Sheet4!$A$3 Sheet5!$A$3 Sheet1!$B$3 Sheet2!$B$3 Sheet3!$B$3 Sheet4!$B$3 Sheet5!$B$3 

В конце концов мы обернуть эту формулу с INDIRECT, чтобы получить фактические данные:

=INDIRECT(ADDRESS(ROW(),QUOTIENT(COLUMN()-1, 5)+1,1,1,INDEX({"Sheet1";"Sheet2";"Sheet3";"Sheet4";"Sheet5"},MOD(COLUMN()-1,5)+1))) 
+0

Boud, это здорово! Большое спасибо. – Martin

1

Введите 1 в ColumnA, обведите в ColumnN с Ctrl нажатой. Выберите все четырнадцать ячеек и перетащите их до ColumnBR с помощью Ctrl нажатие. Сортировка столбцов Наименьший по величине по строке с добавлением 1 и т. Д.

Смежные вопросы