powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel 2010: Взаимодействие значений ячеек из разных листов
25 сообщений из 30, страница 1 из 2
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37445281
Excel-Starter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.

Следующая ситуация:

На первом листе по колонкам распределены данные на каждый заказ (одна колонка = один заказ), по строкам - соотв. разделы (клиент, уникльный порядкковый номер заказа, дата постулкения, адрес, статус счета, сумма входящих расходов, сумма исходящих расходов и т.п. строки на каждый столбец).

На втором листе создана ячейка со списком значений из строки "номер заказа" первого листа.

1) Как сделать, чтобы ниже (в других ячейках второго листа) выводились значения из соотв. заданных ячеек первого листа только из той колонки, в которой находится выбранный в ячейке "номер заказа" номер?
Т.е. на втором листе в ячейке со списком значений выбрали заказ 35 - и в соотв. ячейках отображается "дата поступления", "адрес", "сумма исходящих расходов" и т.п. только 35 заказа (значения берутся из соотв строк первого листа).

2) Как на том же втором листе связать значение из списка значений "клиент" со списком значений "номер заказа" (обе ячейки второго листа берут исходные значения из соотв.строк первого листа), т.е. выбрал из списка значений ячейки "клиент" определенного клиента, и в списке значений "номер заказа" можно выбирать только из номеров заказа этого клиента на первом листе, чтоб другие для выбора не предлагались.


Заранее спасибо за ответы!
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37445299
DV68
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Excel-Starter,
Для многих на форумах по Excel проще за 3 мин показать на практическом примере как это будет, чем сидеть и не менее пол-часа тратить на расписывание чего да как. В итоге еще и окажется, что все не так, типа "а у меня по другому данные".
Приложите пример в .xls и покажите как должно быть. Тогда и ответ получите быстрее.
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37445458
Excel-Starter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DV68,

Спасибо за примеры.
Мой пример - в приложении: В листе "Информация клиенту" требуется в ячейке B2 иметь возможность выбрать одно из всех значений ячеек из строки 2 листа "Заказы", у которых в их же колонке в строке 1 указан тот же клиент, которого мы выбрали в ячейке A2 листа "Информация клиенту".
Так же в ячейке B2 нужно значение "Все заказы клиента" - тогда в соотв. колонках ниже (лист "Информация клиенту") указываются данные из соотв. строк всех заказов выбранного клиента из листа "Заказы". Если выбран один номер заказа - показывается информация из соотв. полей по одному заказу.
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37445460
Excel-Starter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пример
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37445654
Фотография vikttur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ответ на пример :)
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37445686
Excel-Starter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vikttur,

Отлично, спасибо за решение!
А как исключить из показа в "Информации клиенту" заказы со статусом "Закончен" (Лист "Заказы", Строка 10-"Статус заказа") ? (т.е. как к номерам заказов и "Все заказы" в ячейку В2 листа "Информация клиенту" добавить значение "Все активные заказы"?)
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37445703
Фотография vikttur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проверяйте, набросал "на глаз".
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37445784
Excel-Starter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vikttur,

Кажется - то что надо! Большое спасибо!
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37452609
Excel-Starter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vikttur,

Что-то никак не получается приделать Вашу формулу ячеек к полной версии таблицы (больше ячеек с данными, в приложении). Думал получится понять систему и перенять по аналогии на большую таблицу, но похоже переоценил свои силы...Неудачная попытка - в приложении. Пытался сделать два листа - "Информация клиенту" и "Информация подрядчику", чтоб каждый лист состоял из текста и перенятых данных из избранных ячеек листа "Заказы", актуальных для клиента / подрядчика соотв (в табличном виде).
Пробовал взять данные без изменений из Вашего примера - тоже не сработало.
Выбор "Все заказы клиента"/"Все активные заказы клиента" (т.е. все заказы со значением "Нет" в поле "Закончен" в листе "Заказы") и выбор из номеров заказов выбранного клиента - тоже почему-то сбился.
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37452613
Excel-Starter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поправка:
Выбор "Все заказы клиента"/"Все активные заказы клиента" (т.е. все заказы HE со значением " Да " в поле "Завершен" в листе "Заказы") и выбор из номеров заказов выбранного клиента - тоже почему-то сбился.
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37456044
Excel-Starter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В приложении - более "красивая" версия, без формул в листах "инфо": понять, как работает пример vikttur так и не смог...
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37456222
Фотография vikttur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Забылось, а вникать уже не хочется.
Код: plaintext
=ЕСЛИ(СТРОКА(1:1)>МАКС(Заказы!$1:$1);"";ГПР(СТРОКА(1:1);Заказы!$1:$10;СТОЛБЕЦ(C:C);))
Если номер строки больше, чем максимальное значение во вспомогательной_строке, то "пусто", иначе по номеру строки во вспомогательной_строке найти значение.
Вспомогательная:
Код: plaintext
=ЕСЛИ(B2='Информация клиенту'!$A$2;ЕСЛИ('Информация клиенту'!$B$2="Все активные заказы";ЕСЛИ(B10="Закончен";;МАКС($A$1:A1)+1);ЕСЛИ('Информация клиенту'!$B$2="Все заказы";МАКС($A$1:A1)+1;--(B3='Информация клиенту'!$B$2))))
При совпадении данных строк 2 и 10 листа Заказы с данными ячеек $A$2 и $B$2 листа Информация клиенту добавляется единичка к максимальному значению слева, так нумеруются нужные столбцы.

Еще непонятки есть?
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37462005
Excel-Starter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vikttur,

Часть присвоения номеров колонкам с заказами - работает (цифры в первой строке - все верные , меняются в соответствии с правилом), проблема похоже в индексации.

В исходном примере (заказ1.xls) в листе "Данные" в ячейке C4, показывается верный номер первого заказа, подходящего под правила фильтрации, заданные в листе "Информация клиенту" (в ячейках A2 & B2) - формула:
=ИНДЕКС(Заказы!$3:$3;НАИМЕНЬШИЙ(ЕСЛИ('Информация клиенту'!$A$2=Заказы!$2:$2;СТОЛБЕЦ($B:$IV)-1);СТРОКА(1:1)))

B моей попытке перенять систему (ZakazyLite.xlsx) в ячейке С4 стоит формула:
=ИНДЕКС(Заказы!$9:$9;НАИМЕНЬШИЙ(ЕСЛИ('Инфо клиенту'!$A$2=Заказы!$8:$8;СТОЛБЕЦ($ B :$IV)-1);СТРОКА(1:1)))

и прописывается значение "4" вместо номера первого заказа с индексом [1] в первой строке его колонки(книга "Заказы") - т.е. "2" (заказ с о значением не= "Yes" в строке "Закончен" и выбранного клиента "А" в листе "Инфо клиенту" (А2)).

Менял "В" в формуле на разные значения - получались какие-угодно цифры (или ошибки), но не те, что надо.
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37466641
Excel-Starter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vikttur,

Т.е. первый шаг - присваивание в ячейках первой строки цифр колонкам заказов (в листе "Заказы") - настроил и он работает:
0-получают заказы выбранного клиента (лист "Инфо-клиенту" - A2) со значением "Да" в строке "Закончен" (лист "Заказы"), а номера с 1 - до ... - получают все заказы выбранного клиента (в листе "Инфо-клиенту" - A2) с другим, чем "Да", значением в соотв. ячейке (т. е. пусто) в строке "Закончен".

Какие шаги/формулы нужно дать дальше?

Заранее спасибо!
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37466692
Фотография vikttur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
ЕСЛИ('Инфо клиенту'!$A$2=Заказы!$8:$8;СТОЛБЕЦ($B:$IV)-1)
СТОЛБЕЦ($B:$IV) - потому что данные начинаются со второго столбца:
Если имя клиента из 'Инфо клиенту'!$A$2 совпадает с именем в строке 8 , в массив записывается номер столбца, в котором совпадение. Получается массив, состоящий из номеров столбцов с совпадениями.
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37466765
Excel-Starter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vikttur,

Почему то

=ИНДЕКС(Заказы!$9:$9;НАИМЕНЬШИЙ(ЕСЛИ('Инфо клиенту'!$A$2=Заказы!$8:$8;СТОЛБЕЦ($B:$IV)-1);СТРОКА(1:1)))

возвращает значение "Заказ" (т. е. из Заказы!A9)
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37466904
Фотография vikttur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Покажите.
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37467015
Excel-Starter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vikttur,

В приложении.
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37467047
Фотография Serge 007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Excel-Startervikttur,

Почему то

=ИНДЕКС(Заказы!$9:$9;НАИМЕНЬШИЙ(ЕСЛИ('Инфо клиенту'!$A$2=Заказы!$8:$8;СТОЛБЕЦ($B:$IV)-1);СТРОКА(1:1)))

возвращает значение "Заказ" (т. е. из Заказы!A9)
А так (см. вложение)?
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37467059
Фотография Serge 007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37467074
Фотография vikttur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
{
Код: plaintext
=ИНДЕКС(Заказы!$10:$10;НАИМЕНЬШИЙ(ЕСЛИ('Инфо клиенту'!$A$2=Заказы!$9:$9;СТОЛБЕЦ(2:2));СТРОКА(1:1)))
}
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37467294
Excel-Starter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Serge 007,
vikttur ,

Странно, но и в примере "Excel-Starter .rar" и при внесении формулы "=ИНДЕКС(Заказы!$10:$10;НАИМЕНЬШИЙ(ЕСЛИ('Инфо клиенту'!$A$2=Заказы!$9:$9;СТОЛБЕЦ(2:2));СТРОКА(1:1)))" результат - тот же. Может где-то еще нужно что-то внести?
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37467307
Фотография vikttur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37467468
Excel-Starter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vikttur,

Спасибо!
А что изменилось? Формула вроде та же...
...
Рейтинг: 0 / 0
Excel 2010: Взаимодействие значений ячеек из разных листов
    #37467488
Фотография Serge 007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Excel-Startervikttur,

Спасибо!
А что изменилось? Формула вроде та же...
Формулы массива вводятся нажатием Ctrl+Shift+Enter
...
Рейтинг: 0 / 0
25 сообщений из 30, страница 1 из 2
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel 2010: Взаимодействие значений ячеек из разных листов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]