Предположим, у меня есть несколько таблиц на листе. Каждая таблица представляет месяц года. Я хочу показать одну из таблиц, таблицу за текущий месяц, на следующем листе.

Как мне этого добиться?

1 ответ1

0

Предположение:

Sheet1 содержит таблицу, подобную этой:

Date......    First-column    ...
2012-01-01    Some text...    ...
2012-01-02    ...
....

Затем Sheet2 с этим вошел:

A1: base    
B1: 2012-02-01
C1: =MATCH(B1;Sheet1!A2:A9999)  
A2: end
B2: =B1+(DATE(YEAR(B1);MONTH(B1)+1;DAY(B1))-B1)-1,=B2-B1
A3: =Sheet1!A1
B3: =Sheet1!B1
A4: =IF(ROWS($A$4:A4)<=($C$2);OFFSET(Sheet1!$A$2;$C$1+ROWS($A$4:A4)-2;COLUMNS($A$4:A4)-1);"")

... будет отображаться как (например, второй столбец как длинная версия даты в первом):

base        2012-02-12      43  < start row
end.        2012-03-11      28  < count
Date        dText       
2012-02-12  februari 12, 2012       
2012-02-13  februari 13, 2012       
2012-02-14  februari 14, 2012       
2012-02-15  februari 15, 2012       
2012-02-16  februari 16, 2012       
2012-02-17  februari 17, 2012       
2012-02-18  februari 18, 2012       
2012-02-19  februari 19, 2012       
2012-02-20  februari 20, 2012       
2012-02-21  februari 21, 2012       
2012-02-22  februari 22, 2012       
2012-02-23  februari 23, 2012       
2012-02-24  februari 24, 2012       
2012-02-25  februari 25, 2012       
2012-02-26  februari 26, 2012       
2012-02-27  februari 27, 2012       
2012-02-28  februari 28, 2012       
2012-02-29  februari 29, 2012       
2012-03-01  mars 1, 2012        
2012-03-02  mars 2, 2012        
2012-03-03  mars 3, 2012        
2012-03-04  mars 4, 2012        
2012-03-05  mars 5, 2012        
2012-03-06  mars 6, 2012        
2012-03-07  mars 7, 2012        
2012-03-08  mars 8, 2012        
2012-03-09  mars 9, 2012        
2012-03-10  mars 10, 2012       

... при условии, что вы заполните содержимое А4 для первых двух столбцов (в этом примере разверните по желанию) и получите показанные данные в листе 1.

Измените "базовую" дату, и дисплей адаптируется, используя количество дней в месяце базовой даты в качестве количества строк.

'начальная строка' - это строка на первом листе, которую match() находит с базовой датой в качестве аргумента.

'count' - это количество дней в месяце.

Затем они используются в формуле в A4, чтобы выбрать соответствующую часть данных с помощью OFFSET() путем подсчета ROWS() и COLUMNS().

Попробуйте сохранить его как «Test.csv» и открыть его в Excel, чтобы получить введенные формулы:

base,2012-02-02,=MATCH(B1;Sheet1!A2:A9999),"=""< start row"""
end,=B1+(DATE(YEAR(B1);MONTH(B1)+1;DAY(B1))-B1)-1,=B2-B1,"=""< count"""
=Sheet1!A1,=Sheet1!B1,,
"=IF(ROWS($A$4:A4)<=($C$2);OFFSET(Sheet1!$A$2;$C$1+ROWS($A$4:A4)-2;COLUMNS($A$4:A4)-1);"""")","=IF(ROWS($A$4:B4)<=($C$2);OFFSET(Sheet1!$A$2;$C$1+ROWS($A$4:B4)-2;COLUMNS($A$4:B4)-1);"""")",,

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .