Ребятки, добрый день. Помогите, пожалуйста автоматизировать 2 задачи, которые сейчас делаю ручками. Чувствую, это можно сделать, но пока не нашел ответа как Первая задача Есть несколько листов в одной книге. Мне нужно на новый лист со всех остальных листов получить значения с первой строки всех столбцов, где эти значения заполнены(пересечения столбца и строки не пустое). То есть иными словами мне надо получить все значения первой строки заполненных столбцов в массиве листов. Я могу подсчитать и получить номера столбцов с помощью функции, а потом подставить этот массив в функцию Индекс для получения значений первой строки этих столбцов, но проблема в том, что на каждом листе разное количество столбцов...И поэтому в функции получения массива номеров столбцов диапазон каждого листа нужно менять вручную Можно как-то получить массив номеров заполненных столбцов листа ? Здесь же вопрос-первым аргументом функции ИНДЕКС идет массив откуда брать данные. Какой будет синтаксис, чтобы в качестве этого аргумента указать массив листов? Чтобы не для каждого листа отдельно форматировать формулу, а получить данные одной формулой? Если немного намудрил с описанием, напишу на человеческом для чего мне это нужно - есть N количество листов, на каждом листе есть заголовки(характеристики агрегатов). Количество заголовков-характеристик на каждом листе разное. Большинство статусов по листам совпадают, но есть и те, которые индивидуальны для каждого листа. Мне нужно на одном листе собрать все возможные заголовки-статусы и сделать список неповторяющихся, чтобы в будущем делать сводный лист по всем листам. Отсюда вытекает... Вторая задача Есть сводный лист со всеми возможными характеристиками агрегатов. Мне нужно по названию заголовка-характеристики получить все данные из столбцов других листов... Получается только в ручном режиме через сочитание функций ПОИСКПОПОЗ и ИНДЕКС, меняя аргументы для каждого листа. Но это очень много времени забирает, может умные люди подскажут как это правильнее сделать...?
Богдан, на форуме главное правило - приложи небольшой пример в файле Excel и покажи в нём готовый результат. Нет файла - будет долгий разговор ни о чём и впустую потерянное время
Богдан, ну, с первой задачей - собрать все заголовки со всех листов я могу помочь. Скачайте файл, откройте его, нажмите Alt+F8 - Выполнить - макрос соберёт все уникальные заголовки со всех листов и вставит их на новый лист. P.S. А по второй задаче - созданию сводной - если никто вам не поможет бесплатно... могу написать макрос за деньги, который соберёт вашу сводную
написал: Богдан, ну, с первой задачей - собрать все заголовки со всех листов я могу помочь. Скачайте файл, откройте его, нажмите Alt+F8 - Выполнить - макрос соберёт все уникальные заголовки со всех листов и вставит их на новый лист. P.S. А по второй задаче - созданию сводной - если никто вам не поможет бесплатно... могу написать макрос за деньги, который соберёт вашу сводную
Большое спасибо Вам за макрос! Понимаете в чем дело, я все же надеялся, что это решается без написания макрос на VBA, почему-то казалось, что вторую задачу можно решить функциями. Как мне казалось, там всего-то и надо что перебирать столбцы по имени и возвращать все содержимое столбца, если заголовок найден. И так по каждому листу. Видимо без "продвинутого" уровня владением макросами, которые я только начал познавать, не обойдется... В любом случае спасибо за помощь!
PS И ещё, в ПРАВИЛАХ форума (п.2.6), сказано: 1 вопрос 1 тема.
Извиняюсь за 2 вопроса. Просто они взаимосвязаны, поэтому решил не разделять для лучшего понимания. Спасибо большое за помощь, буду изучать инструменты, которыми не владею))