У меня вот такой вопрос: Можно ли в excel 2007 сделать выборку по нескольким параметрам с разных листов книги? и если можно, то как?
Задача: Прикрепил кусок из файла (в оригинале более 100 листов и в каждом порядка 100-400 строк), необходимо создать, например на 1 листе, форму для выбора: Ячейка А1 - указываем тип шва. (соответственно нужно найти по всем листам указанный тип шва) ячейка А2 - толщина металла А3 - площадь сечения А4 - тип сварки.... и т.д. и надо чтобы, например в ячейку В1, отобразилось значение неполного штучного времени, соответствующее указанному выше.
Подскажите пожалуйста как лучше такое сделать
Добрый день!
У меня вот такой вопрос: Можно ли в excel 2007 сделать выборку по нескольким параметрам с разных листов книги? и если можно, то как?
Задача: Прикрепил кусок из файла (в оригинале более 100 листов и в каждом порядка 100-400 строк), необходимо создать, например на 1 листе, форму для выбора: Ячейка А1 - указываем тип шва. (соответственно нужно найти по всем листам указанный тип шва) ячейка А2 - толщина металла А3 - площадь сечения А4 - тип сварки.... и т.д. и надо чтобы, например в ячейку В1, отобразилось значение неполного штучного времени, соответствующее указанному выше.
Подскажите пожалуйста как лучше такое сделатьx1313
Жесть. Нет, силами Excel этого сделать не получится, если только вручную не прописать формулы поиска по всем листам по отдельности, причём учитывать, что на некоторых листах данные "подпорчены", типа записи для толщины "3 - 10." и объединёнными ячейками
На VBA, думаю, можно решить...
Жесть. Нет, силами Excel этого сделать не получится, если только вручную не прописать формулы поиска по всем листам по отдельности, причём учитывать, что на некоторых листах данные "подпорчены", типа записи для толщины "3 - 10." и объединёнными ячейками
да "подпорченные" может из 100 листов на 3 встречаются...
так и предполагал, что екселю бут сложновато самому так искать.
с VBA к сожалению не знаком. А не подскажете, нельзя ли это силами PHP + MySQL сделать? Мне кажется там будет проще это организовать. Перевести таблицу ексель в MySQL и средствами ПХП делать выборки из мускула?
да "подпорченные" может из 100 листов на 3 встречаются...
так и предполагал, что екселю бут сложновато самому так искать.
с VBA к сожалению не знаком. А не подскажете, нельзя ли это силами PHP + MySQL сделать? Мне кажется там будет проще это организовать. Перевести таблицу ексель в MySQL и средствами ПХП делать выборки из мускула?x1313
На VBA на словаре думаю можно сделать. Перебором заполнить словарь всеми возможными вариантами, для выбора толщины набрать словарь наличествующих толщин (ну в общем и для типа шва и типа сварки тоже можно сделать по словарю). Затем из этих словарей даём выбрать исходные данные (заполняем выпадающие списки или что там будет - я бы лучше нарисовал форму) - сразу из общего словаря показываем ответ. Если исходные данные (те 100 листов) в процессе меняться не будут, то можно эти словари сделать публичными и заполнить один раз при открытии книги (ну или ещё спецкнопку на лист поместить). Далее при изменении данных запроса сразу давать ответ. Но делать довольно муторно, много прописывать-высчитывать позиций ячеек, возможно будет много кода, и неинтересно. Изучайте циклы, массивы, словари.
На VBA на словаре думаю можно сделать. Перебором заполнить словарь всеми возможными вариантами, для выбора толщины набрать словарь наличествующих толщин (ну в общем и для типа шва и типа сварки тоже можно сделать по словарю). Затем из этих словарей даём выбрать исходные данные (заполняем выпадающие списки или что там будет - я бы лучше нарисовал форму) - сразу из общего словаря показываем ответ. Если исходные данные (те 100 листов) в процессе меняться не будут, то можно эти словари сделать публичными и заполнить один раз при открытии книги (ну или ещё спецкнопку на лист поместить). Далее при изменении данных запроса сразу давать ответ. Но делать довольно муторно, много прописывать-высчитывать позиций ячеек, возможно будет много кода, и неинтересно. Изучайте циклы, массивы, словари.Hugo
так и предполагал, что екселю бут сложновато самому так искать
Excel'ю сложно становится работать, когда его нагружают функционалом, для которого он не предназначен Excel - это электронная таблица, а не реляционная СУБД, которую Вы хотите из него сделать.
Сделай Вы, как положено, справочник исходных данных на одном листе - и работать с помощью сводной таблицы было бы легко и удобно. А так - нет. Возить на велосипеде трёхметровую арматуру в вязанках по полторы тонны никто не запрещает, но вряд ли у Вас это получится
Quote (x1313)
так и предполагал, что екселю бут сложновато самому так искать
Excel'ю сложно становится работать, когда его нагружают функционалом, для которого он не предназначен Excel - это электронная таблица, а не реляционная СУБД, которую Вы хотите из него сделать.
Сделай Вы, как положено, справочник исходных данных на одном листе - и работать с помощью сводной таблицы было бы легко и удобно. А так - нет. Возить на велосипеде трёхметровую арматуру в вязанках по полторы тонны никто не запрещает, но вряд ли у Вас это получится Serge_007
листы меняться не будут. с ВБА не знаком. Пока подумаю что делать... Спасибо за ответы. Если у кого-то есть еще варианты - с удовольствием выслушаю
листы меняться не будут. с ВБА не знаком. Пока подумаю что делать... Спасибо за ответы. Если у кого-то есть еще варианты - с удовольствием выслушаю x1313
вот такой вопрос возник: есть такая функция =СУММЕСЛИ(). суммирует столбец с заданным условием. А нет ли такой функции, которая выберет ячейку исходя из 2-х (хотябы) условий.
Напимер в моем случае: выбрали толщину металла (С8:С15) и диаметр проволоки (F5:K5),
задаем, например 1 и 1, показывает значение 2,9
пока есть время, покопаюсь с Excel'ем.
вот такой вопрос возник: есть такая функция =СУММЕСЛИ(). суммирует столбец с заданным условием. А нет ли такой функции, которая выберет ячейку исходя из 2-х (хотябы) условий.
Напимер в моем случае: выбрали толщину металла (С8:С15) и диаметр проволоки (F5:K5),
задаем, например 1 и 1, показывает значение 2,9x1313
Я ведь выше уже написал - SUMPRODUCT() по нерусски Только использовать нужно не так, как в хелпе написано. Поищите тут по форуму примеры. Хотя если будет много совпадений - то наврёт, всё сложит... Но по логике таких совападений быть не должно.
Я ведь выше уже написал - SUMPRODUCT() по нерусски Только использовать нужно не так, как в хелпе написано. Поищите тут по форуму примеры. Хотя если будет много совпадений - то наврёт, всё сложит... Но по логике таких совападений быть не должно.Hugo
Да, и в первом столбце ещё тип шва - тогда уже фильтром можно получить результат. Ну и формулами и макросом тоже без проблем. Даже вот так можно (выпадающие списки сделал наскоро, без отбора уникальных, но вообще их бы нужно делать связанными):
Да, и в первом столбце ещё тип шва - тогда уже фильтром можно получить результат. Ну и формулами и макросом тоже без проблем. Даже вот так можно (выпадающие списки сделал наскоро, без отбора уникальных, но вообще их бы нужно делать связанными):Hugo
В моём варианте всего лишь нужно убрать объединение в типе шва, ну и протянуть этот тип по пустым ячейкам. И убрать эти минусы. Затем слить все данные на один лист (шапку можно оставить как есть) - и можно пользоваться.
P.S. Я думаю самое простое и удобное в использовании - это слить всё на один лист как я выше написал и поставить фильтр по B, C, D в строке 7 (разобъединив эти ячейки). Визуально шапка даже не изменится, если всё аккуратно сделать
В моём варианте всего лишь нужно убрать объединение в типе шва, ну и протянуть этот тип по пустым ячейкам. И убрать эти минусы. Затем слить все данные на один лист (шапку можно оставить как есть) - и можно пользоваться.
P.S. Я думаю самое простое и удобное в использовании - это слить всё на один лист как я выше написал и поставить фильтр по B, C, D в строке 7 (разобъединив эти ячейки). Визуально шапка даже не изменится, если всё аккуратно сделать Hugo
Нашлась свободная мимнутка времени, вернулся к своим "баранам " Hugo, Воспользовался Вашим вариантом. Там, кстати, форму таблицы можно и не менять, единственное "тип шва" - объединенные ячейки разделить и прописать в каждой ячейке тип шва.
Выбрал простой, но нудный способ, выбирать из каждой страницы.. (интересно хватит ли длины формулы )
Начал пробовать на 2-х страницах и возник такой вопрос: какую формулу выбрать для того, чтобы выбор происходил по нескольким листам. = ИЛИ не подходит... вернее выбор идет, но в результате выдает ИСТИНА или ЛОЖЬ. А хотелось бы получать цифру
Нашлась свободная мимнутка времени, вернулся к своим "баранам " Hugo, Воспользовался Вашим вариантом. Там, кстати, форму таблицы можно и не менять, единственное "тип шва" - объединенные ячейки разделить и прописать в каждой ячейке тип шва.
Выбрал простой, но нудный способ, выбирать из каждой страницы.. (интересно хватит ли длины формулы )
Начал пробовать на 2-х страницах и возник такой вопрос: какую формулу выбрать для того, чтобы выбор происходил по нескольким листам. = ИЛИ не подходит... вернее выбор идет, но в результате выдает ИСТИНА или ЛОЖЬ. А хотелось бы получать цифру x1313