2012-02-09 2 views
4

У меня есть одна электронная таблица, которая имеет 5 листовКак объединить данные из разных листов, которые используют один и тот же шаблон?

Все листы имеют один и тот же шаблон, поэтому они одинаковы. Единственное отличие - это данные

Я хотел бы сделать еще один лист, который получает все данные из столбца A3 (от строки 3 до конца) в листе 1,2,3,4,5 и помещает его в 1 в моем новом листе.

Как это возможно?

Я использую Google Docs, но я думаю, что Excel и Google Docs очень похожи.

Благодаря

+0

Я не понимаю. Вы хотите объединить все данные в один столбец? Затем используйте функцию CONCATENATE. В противном случае вы можете просто скопировать/вставить? – Cutter

+0

У меня такая же проблема, как у этого парня: http://groups.google.com/group/How-to-Documents/browse_thread/thread/82769b8d41c9bd79? pli = 1 Я рассмотрю CONCATENATE – Kenci

+0

CONCATENATE помещает все значения в одну ячейку. Я хотел бы, чтобы все ячейки из листа 1,2,3,4,5 были объединены в один большой список ячеек – Kenci

ответ

3

=CONCATENATE(Sheet1!A:A,",",Sheet2!A:A,",",Sheet3!A:A,",",Sheet4!A:A,",",sheet5!(A:A)) Это будет concatenate A1, A1, A1, A1, A1 для листов 1-5 на листе 6. Перетащите его вниз, чтобы сцепить клетками (А2, то А3). Вам не нужно определять диапазоны A:A, но вы можете, если хотите.

0

Я не думаю, что у вас есть встроенная функция для такой функциональности.

Вы можете легко написать Apps Script, который выполняет эту

var sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets(); 

var newData = new Array(); 

for (var i = 1; i <= 5; i++) { 
    var s = sheets[i]; 
    var r = s.getRange("A:A"); 
    // Go over the values and fill up a new range in sheet 6... 
    var data = r.getValues(); 
    for(i in data){ 
    var row = data[i]; 
    newData.push(row); 
    } 
} 
3

До сих пор лучший ответ, который я нашел на этот вопрос можно найти здесь: http://www.jessespevack.com/systems-leadership/2015/4/22/pulling-spreadsheet-data-no-scripts-required. По сути, используйте ImportRange для вывода данных из нескольких других листов. Затем заверните их в ArrayFormula, чтобы они отображались один за другим на листе. Наконец заверните ArrayFormula в Sort, чтобы пустые строки остались в конце.

Скажите, что у вас есть Sheet1, Sheet2 и Sheet3, и вы хотели бы объединить столбцы A-E на MergeSheet. Поместите заголовки столбцов в клетках MergeSheet A1: E1

Тогда в ячейке A2 введите формулу как это:

=SORT(
    ARRAYFORMULA({ 
     IMPORTRANGE("https://docs.google.com/spreadsheets/d/UniqueKey","Sheet1!A2:E"); 
     IMPORTRANGE("https://docs.google.com/spreadsheets/d/UniqueKey","Sheet2!A2:E"); 
     IMPORTRANGE("https://docs.google.com/spreadsheets/d/UniqueKey","Sheet3!A2:E") 
,1,TRUE})) 

URL-адрес это адрес электронной таблицы, и могут быть скопированы из адресной строки браузера.

Лучше всего проверить, что функция IMPORTRANGE работает для каждого диапазона отдельно, прежде чем объединять их в одну длинную функцию.

0

Это Простейшим решение для объединения нескольких листов нескольких таблиц Google (с теми же колоннами)

=SORT(
    { 
     IMPORTRANGE("unique_spreadsheet_key1";"'Your first sheet'!A2:G"); 
     IMPORTRANGE("unique_spreadsheet_key2";"'Your second sheet'!A2:G"); 
     IMPORTRANGE("unique_spreadsheet_key2";"'Your third sheet'!A2:G") 
    }; 
    3; TRUE 
) 

Основываясь на dcb solution, но исправления (Род часть) и без ARRAYFORMULA!

  • Вы можете изменить 3, чтобы отсортировать свой объёмный лист по столбцу, который вам нужен!
  • unique_spreadsheet_key: только ключ, не NEET полного адреса
Смежные вопросы