|
|
|
Excel Как собрать данные из листов не привязываясь к их названиям?
|
|||
|---|---|---|---|
|
#18+
Привет ВСЕМ! Наверное немного коряво сформулировал вопрос, по другому не получилось. Проблема следующая: есть набор файлов с забитой информацией, в каждом файле порядка 100 значений, формат у файлов одинаковый. типа файл- магазин1 шапка A B C 1 картошка 100 2 яйца 200 3 мясо 300 файл- магазин2 шапка A B C 1 картошка 400 2 яйца 500 3 мясо 600 и так файлов 20шт нужно заполнить следующую табличку картошка яйца мясо магазин1 магазин2 ... наборы этих файлов периодически меняются, нужно формировать такую таблицу без лишних телодвижений мое решение: копируем листы с данными в одну книгу, названия листов магазин1 2009,магазин2 2009,.... на отдельном листе нужная табличка. в ее ячеках надо написать что то типа картошка яйца мясо магазин1 =x1!$c$1 =x1!$c$2 =x1!$c$3 магазин2 =x2!$c$1 =x2!$c$2 =x2!$c$3 .................. магазинN =xN!$c$1 =xN!$c$2 =xN!$c$3 где x1,x2,....xN это переменные с нахваниями листов магазин1 2009,магазин2 2009...магазинN 2009 ну или не переменные а ячейки.... Какой синтаксис у этой конструкции (=x2!$c$1 ) должен быть ???? Как обьявлять такой массив переменных? Можно ли это сделать без макросов? только формулами? вобщем надо 1. скопировал листы, 2. скопировал табличку, 3. поменял в массиве переменных названия листов и во всей табличке новые значения со всех листов. Если кто понял чего хочу, и знает как сделать, пишите.... PS: хелпы и форум читал, может не поглазам, чувствую задача тривиальная, а как сделать не пойму... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2009, 18:04 |
|
||
|
Excel Как собрать данные из листов не привязываясь к их названиям?
|
|||
|---|---|---|---|
|
#18+
в цикле перебираете все листы, читая их имена и записуя их в переменную, а в формулу нужной ячейки пишете: Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2009, 07:32 |
|
||
|
Excel Как собрать данные из листов не привязываясь к их названиям?
|
|||
|---|---|---|---|
|
#18+
up ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2009, 07:34 |
|
||
|
Excel Как собрать данные из листов не привязываясь к их названиям?
|
|||
|---|---|---|---|
|
#18+
ггг))) выше уже не будет XD. чем ответ то не устраивает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2009, 07:42 |
|
||
|
Excel Как собрать данные из листов не привязываясь к их названиям?
|
|||
|---|---|---|---|
|
#18+
Korcarв цикле перебираете все листы, читая их имена и записуя их в переменную, а в формулу нужной ячейки пишете: Код: plaintext я в первом посте немного неправильно выразился у меня набор файлов с разными названиями магазинов типа: лютик, цветик, ландыш, колокльчик,..... в файл я закидываю листы с названиями типа лютик2009, цветик2009, ландыш2009, колокльчик2009,..... причем в этом файле есть листы со старыми данными типа: лютик2008, цветик2008, ландыш2008, колокльчик2008,..... мне кажется надо обьявить массив типа: mas=[лютик, цветик, ландыш, колокльчик,.....] и в таблице в ячейке должно быть что то типа =mas[i]2009!$c$1 а как сделать это в синтаксисе excel ??? я не понимаю..... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2009, 07:46 |
|
||
|
Excel Как собрать данные из листов не привязываясь к их названиям?
|
|||
|---|---|---|---|
|
#18+
jS_BenderМожно ли это сделать без макросов? только формулами? =ДВССЫЛ(A1&":"&A2&"!B2") В А1, A2 - названия листов. Вообще, по живому маленькому примеру легче ориентироваться. А вот подтягивать листы в общую книгу лучше не формулами - монстр получится :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2009, 08:43 |
|
||
|
Excel Как собрать данные из листов не привязываясь к их названиям?
|
|||
|---|---|---|---|
|
#18+
Посоветовал, потом проверил :( ДВССЫЛ не создает массив листов, даже если они названы "1", "2", "3"? Например, СУММ(ДВССЫЛ...) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2009, 09:03 |
|
||
|
Excel Как собрать данные из листов не привязываясь к их названиям?
|
|||
|---|---|---|---|
|
#18+
jS_Bender и в таблице в ячейке должно быть что то типа =mas[i]2009!$c$1 ну да щас ... excel искусственным интеллектом не обладает пока и самостоятельно строковые значения не оформит в массив а в цикле перебора просто надо поставить условие, что типа работать с листами, в названии которых содержится последовательность '2009' или которые заканчиваются на '2009' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2009, 09:59 |
|
||
|
Excel Как собрать данные из листов не привязываясь к их названиям?
|
|||
|---|---|---|---|
|
#18+
Коллеги ВСЕМ спасибо!!! Особенно vikttur я использовал следующее решение скопировал данные в листы лют2009, цвет2009, ланд2009, ..... таблица A B C D .......................... 1 лист магазин картошка яйца мясо 2 лют2009 Лютик =ДВССЫЛ($A2&"!$A$1") =ДВССЫЛ($A2&"!$B$1") 3 цвет2009 Цветик =ДВССЫЛ($A3&"!$A$1") =ДВССЫЛ($A3&"!$B$1") .... .... теперь все данные сразу появляется, ячейку с формулой можно копировать построчно появятся новый набор файлов, просто загоняем в новые листы и меняем названия листов в одном столбце красота..... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2009, 12:39 |
|
||
|
Excel Как собрать данные из листов не привязываясь к их названиям?
|
|||
|---|---|---|---|
|
#18+
jS_Bender, вот пример, когда неправильно заданный вопрос и неправильный ответ на него привели к правильному решению :) Ведь вы спрашивали о массиве листов, а ДВССЫЛ с массивом листов не хочет работать. Почему - сам еще не понял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2009, 14:54 |
|
||
|
Excel Как собрать данные из листов не привязываясь к их названиям?
|
|||
|---|---|---|---|
|
#18+
viktturjS_Bender, вот пример, когда неправильно заданный вопрос и неправильный ответ на него привели к правильному решению :) Ведь вы спрашивали о массиве листов, а ДВССЫЛ с массивом листов не хочет работать. Почему - сам еще не понял. я тут про массив приплел, так как программированием немного занимался, вот и мыслю соответственно ))) хотя программировать не всегда нужно. Главное проблемка решилась... Респект и уважуха всем кто сидит на форуме и отвечает на вопросы новичков!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2009, 16:27 |
|
||
|
Excel Как собрать данные из листов не привязываясь к их названиям?
|
|||
|---|---|---|---|
|
#18+
viktturПосоветовал, потом проверил :( ДВССЫЛ не создает массив листов, даже если они названы "1", "2", "3"? Например, СУММ(ДВССЫЛ...) Для информации. Найден метод "обхода" для суммирования с нескольких листов с использованием ДВВССЫЛ. Саша на Планете посоветовал. =СУММ(СУММЕСЛИ(ДВССЫЛ({1;2;3}&"!A1:c1");"<>")) или =СУММ(Ч(ДВССЫЛ({1;2;3}&"!A1"))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2009, 12:42 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=36319465&tid=2178793]: |
0ms |
get settings: |
7ms |
get forum list: |
27ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
84ms |
get topic data: |
17ms |
get forum data: |
7ms |
get page messages: |
67ms |
get tp. blocked users: |
2ms |
| others: | 217ms |
| total: | 438ms |

| 0 / 0 |
