anton-diz
Дата: Воскресенье, 27.01.2019, 16:49 |
Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Приветствую уважаемые форумчане !!! Перед мной стоит не тривиальная задача просклонять существительные по падежам и условию. Имеется следующие исходные данные представленные в книге содержащие листы:Основное –содержит статус участника (Потерпевший, Свидетель и др.) а так же его ФамилиюЛогика лист где необходимо получить результат в столбцах B:F виде падежей (Именительный, Родительный….)Участники (столбцы Фамилия, Имя, Отчество, а так же формула определения пол лица (М/Ж)Справочник содержит две таблицы со склонениями статуса в зависимости от пола лица (М/Ж)Вопрос как с помощью формулы подставить результат склонения из таблиц Участник_УПК_муж_род, Участник_УПК_жен_род (в зависимости от пола) Участники_tb[пол] при изменении статуса участника Основное_tb[участ_УПК] результат поместить в столбцы Логика_tb[Именительный], Логика_tb[Родительный], Логика_tb[Дательный], Логика_tb[Винительный], Логика_tb[Творительный] листе (Логика): Иными словами при выборе статуса из таблицы Основное_tb[участ_УПК] «Защитник» и выбора «Костина» из столбца Основное_tb[участник]» получить результат в столбцы (Логика!B3:F3) должны иметь следующие значения Именительный– Защитник, Родительный–Защитника, Дательный– Защитнику, Винительный¬ Защитника, Творительный¬ Защитником
Приветствую уважаемые форумчане !!! Перед мной стоит не тривиальная задача просклонять существительные по падежам и условию. Имеется следующие исходные данные представленные в книге содержащие листы:Основное –содержит статус участника (Потерпевший, Свидетель и др.) а так же его ФамилиюЛогика лист где необходимо получить результат в столбцах B:F виде падежей (Именительный, Родительный….)Участники (столбцы Фамилия, Имя, Отчество, а так же формула определения пол лица (М/Ж)Справочник содержит две таблицы со склонениями статуса в зависимости от пола лица (М/Ж)Вопрос как с помощью формулы подставить результат склонения из таблиц Участник_УПК_муж_род, Участник_УПК_жен_род (в зависимости от пола) Участники_tb[пол] при изменении статуса участника Основное_tb[участ_УПК] результат поместить в столбцы Логика_tb[Именительный], Логика_tb[Родительный], Логика_tb[Дательный], Логика_tb[Винительный], Логика_tb[Творительный] листе (Логика): Иными словами при выборе статуса из таблицы Основное_tb[участ_УПК] «Защитник» и выбора «Костина» из столбца Основное_tb[участник]» получить результат в столбцы (Логика!B3:F3) должны иметь следующие значения Именительный– Защитник, Родительный–Защитника, Дательный– Защитнику, Винительный¬ Защитника, Творительный¬ Защитником anton-diz
Сообщение отредактировал anton-diz - Воскресенье, 27.01.2019, 16:51
Ответить
Сообщение Приветствую уважаемые форумчане !!! Перед мной стоит не тривиальная задача просклонять существительные по падежам и условию. Имеется следующие исходные данные представленные в книге содержащие листы:Основное –содержит статус участника (Потерпевший, Свидетель и др.) а так же его ФамилиюЛогика лист где необходимо получить результат в столбцах B:F виде падежей (Именительный, Родительный….)Участники (столбцы Фамилия, Имя, Отчество, а так же формула определения пол лица (М/Ж)Справочник содержит две таблицы со склонениями статуса в зависимости от пола лица (М/Ж)Вопрос как с помощью формулы подставить результат склонения из таблиц Участник_УПК_муж_род, Участник_УПК_жен_род (в зависимости от пола) Участники_tb[пол] при изменении статуса участника Основное_tb[участ_УПК] результат поместить в столбцы Логика_tb[Именительный], Логика_tb[Родительный], Логика_tb[Дательный], Логика_tb[Винительный], Логика_tb[Творительный] листе (Логика): Иными словами при выборе статуса из таблицы Основное_tb[участ_УПК] «Защитник» и выбора «Костина» из столбца Основное_tb[участник]» получить результат в столбцы (Логика!B3:F3) должны иметь следующие значения Именительный– Защитник, Родительный–Защитника, Дательный– Защитнику, Винительный¬ Защитника, Творительный¬ Защитником Автор - anton-diz Дата добавления - 27.01.2019 в 16:49
Nic70y
Дата: Воскресенье, 27.01.2019, 17:16 |
Сообщение № 2
Группа: Друзья
Ранг: Экселист
Сообщений: 8761
Репутация:
2273
±
Замечаний:
0% ±
Excel 2010
Код
=ИНДЕКС((Участник_УПК_муж_род[#Все];Участник_УПК_жен_род[#Все]);ПОИСКПОЗ(ИНДЕКС(Основное_tb[[#Все];[участ_УПК]:[участ_УПК]];ПОИСКПОЗ(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(Логика_tb[[#Все];[ФИО]:[ФИО]];" ";ПОВТОР(" ";37));37));Основное_tb[[#Все];[участник]:[участник]];));Участник_УПК_tb[[#Все];[участ_УПК]];);СТОЛБЕЦ()-1;1+("Ж"=ВПР(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(Логика_tb[[#Все];[ФИО]:[ФИО]];" ";ПОВТОР(" ";37));37));Участники_tb[#Все];5;)))
тЭг формулы тупанул[vba]Код
=ИНДЕКС((Участник_УПК_муж_род[#Все];Участник_УПК_жен_род[#Все]);ПОИСКПОЗ(ИНДЕКС(Основное_tb[[#Все];[участ_УПК]:[участ_УПК]];ПОИСКПОЗ(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(Логика_tb[[#Все];[ФИО]:[ФИО]];" ";ПОВТОР(" ";37));37));Основное_tb[[#Все];[участник]:[участник]];));Участник_УПК_tb[[#Все];[участ_УПК]];);СТОЛБЕЦ()-1;1+("Ж"=ВПР(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(Логика_tb[[#Все];[ФИО]:[ФИО]];" ";ПОВТОР(" ";37));37));Участники_tb[#Все];5;)))
[/vba]
Код
=ИНДЕКС((Участник_УПК_муж_род[#Все];Участник_УПК_жен_род[#Все]);ПОИСКПОЗ(ИНДЕКС(Основное_tb[[#Все];[участ_УПК]:[участ_УПК]];ПОИСКПОЗ(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(Логика_tb[[#Все];[ФИО]:[ФИО]];" ";ПОВТОР(" ";37));37));Основное_tb[[#Все];[участник]:[участник]];));Участник_УПК_tb[[#Все];[участ_УПК]];);СТОЛБЕЦ()-1;1+("Ж"=ВПР(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(Логика_tb[[#Все];[ФИО]:[ФИО]];" ";ПОВТОР(" ";37));37));Участники_tb[#Все];5;)))
тЭг формулы тупанул[vba]Код
=ИНДЕКС((Участник_УПК_муж_род[#Все];Участник_УПК_жен_род[#Все]);ПОИСКПОЗ(ИНДЕКС(Основное_tb[[#Все];[участ_УПК]:[участ_УПК]];ПОИСКПОЗ(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(Логика_tb[[#Все];[ФИО]:[ФИО]];" ";ПОВТОР(" ";37));37));Основное_tb[[#Все];[участник]:[участник]];));Участник_УПК_tb[[#Все];[участ_УПК]];);СТОЛБЕЦ()-1;1+("Ж"=ВПР(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(Логика_tb[[#Все];[ФИО]:[ФИО]];" ";ПОВТОР(" ";37));37));Участники_tb[#Все];5;)))
[/vba]Nic70y
ЮMoney 41001841029809
Сообщение отредактировал Nic70y - Воскресенье, 27.01.2019, 17:16
Ответить
Сообщение Код
=ИНДЕКС((Участник_УПК_муж_род[#Все];Участник_УПК_жен_род[#Все]);ПОИСКПОЗ(ИНДЕКС(Основное_tb[[#Все];[участ_УПК]:[участ_УПК]];ПОИСКПОЗ(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(Логика_tb[[#Все];[ФИО]:[ФИО]];" ";ПОВТОР(" ";37));37));Основное_tb[[#Все];[участник]:[участник]];));Участник_УПК_tb[[#Все];[участ_УПК]];);СТОЛБЕЦ()-1;1+("Ж"=ВПР(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(Логика_tb[[#Все];[ФИО]:[ФИО]];" ";ПОВТОР(" ";37));37));Участники_tb[#Все];5;)))
тЭг формулы тупанул[vba]Код
=ИНДЕКС((Участник_УПК_муж_род[#Все];Участник_УПК_жен_род[#Все]);ПОИСКПОЗ(ИНДЕКС(Основное_tb[[#Все];[участ_УПК]:[участ_УПК]];ПОИСКПОЗ(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(Логика_tb[[#Все];[ФИО]:[ФИО]];" ";ПОВТОР(" ";37));37));Основное_tb[[#Все];[участник]:[участник]];));Участник_УПК_tb[[#Все];[участ_УПК]];);СТОЛБЕЦ()-1;1+("Ж"=ВПР(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(Логика_tb[[#Все];[ФИО]:[ФИО]];" ";ПОВТОР(" ";37));37));Участники_tb[#Все];5;)))
[/vba]Автор - Nic70y Дата добавления - 27.01.2019 в 17:16
anton-diz
Дата: Воскресенье, 27.01.2019, 19:13 |
Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Nic70y, все классно работает но после третьего в выпадающем списке учасника УПК формула начинает выдавать не корректные результаты как например
Nic70y, все классно работает но после третьего в выпадающем списке учасника УПК формула начинает выдавать не корректные результаты как например anton-diz
Ответить
Сообщение Nic70y, все классно работает но после третьего в выпадающем списке учасника УПК формула начинает выдавать не корректные результаты как например Автор - anton-diz Дата добавления - 27.01.2019 в 19:13
Nic70y
Дата: Воскресенье, 27.01.2019, 19:30 |
Сообщение № 4
Группа: Друзья
Ранг: Экселист
Сообщений: 8761
Репутация:
2273
±
Замечаний:
0% ±
Excel 2010
а, ну да, не заметил несоот. таблиц на листе Справочники. разбираться стало лень, написал формулу заново.Код
=ИНДЕКС((Участник_УПК_муж_род[#Все];Участник_УПК_жен_род[#Все]);ПОИСКПОЗ(ИНДЕКС(ИНДЕКС(Основное_tb[#Все];;1);ПОИСКПОЗ(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(ИНДЕКС(Логика_tb[#Все];СТРОКА()-1;1);" ";ПОВТОР(" ";37));37));ИНДЕКС(Основное_tb[#Все];;2);));ИНДЕКС(Участник_УПК_муж_род[#Все];;1););СТОЛБЕЦ()-1;1+(ПРАВБ(ИНДЕКС(Логика_tb[#Все];СТРОКА()-1;1))="а"))
тЭг таки. [vba]Код
=ИНДЕКС((Участник_УПК_муж_род[#Все];Участник_УПК_жен_род[#Все]);ПОИСКПОЗ(ИНДЕКС(ИНДЕКС(Основное_tb[#Все];;1);ПОИСКПОЗ(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(ИНДЕКС(Логика_tb[#Все];СТРОКА()-1;1);" ";ПОВТОР(" ";37));37));ИНДЕКС(Основное_tb[#Все];;2);));ИНДЕКС(Участник_УПК_муж_род[#Все];;1););СТОЛБЕЦ()-1;1+(ПРАВБ(ИНДЕКС(Логика_tb[#Все];СТРОКА()-1;1))="а"))
[/vba]
а, ну да, не заметил несоот. таблиц на листе Справочники. разбираться стало лень, написал формулу заново.Код
=ИНДЕКС((Участник_УПК_муж_род[#Все];Участник_УПК_жен_род[#Все]);ПОИСКПОЗ(ИНДЕКС(ИНДЕКС(Основное_tb[#Все];;1);ПОИСКПОЗ(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(ИНДЕКС(Логика_tb[#Все];СТРОКА()-1;1);" ";ПОВТОР(" ";37));37));ИНДЕКС(Основное_tb[#Все];;2);));ИНДЕКС(Участник_УПК_муж_род[#Все];;1););СТОЛБЕЦ()-1;1+(ПРАВБ(ИНДЕКС(Логика_tb[#Все];СТРОКА()-1;1))="а"))
тЭг таки. [vba]Код
=ИНДЕКС((Участник_УПК_муж_род[#Все];Участник_УПК_жен_род[#Все]);ПОИСКПОЗ(ИНДЕКС(ИНДЕКС(Основное_tb[#Все];;1);ПОИСКПОЗ(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(ИНДЕКС(Логика_tb[#Все];СТРОКА()-1;1);" ";ПОВТОР(" ";37));37));ИНДЕКС(Основное_tb[#Все];;2);));ИНДЕКС(Участник_УПК_муж_род[#Все];;1););СТОЛБЕЦ()-1;1+(ПРАВБ(ИНДЕКС(Логика_tb[#Все];СТРОКА()-1;1))="а"))
[/vba] Nic70y
ЮMoney 41001841029809
Сообщение отредактировал Nic70y - Воскресенье, 27.01.2019, 19:31
Ответить
Сообщение а, ну да, не заметил несоот. таблиц на листе Справочники. разбираться стало лень, написал формулу заново.Код
=ИНДЕКС((Участник_УПК_муж_род[#Все];Участник_УПК_жен_род[#Все]);ПОИСКПОЗ(ИНДЕКС(ИНДЕКС(Основное_tb[#Все];;1);ПОИСКПОЗ(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(ИНДЕКС(Логика_tb[#Все];СТРОКА()-1;1);" ";ПОВТОР(" ";37));37));ИНДЕКС(Основное_tb[#Все];;2);));ИНДЕКС(Участник_УПК_муж_род[#Все];;1););СТОЛБЕЦ()-1;1+(ПРАВБ(ИНДЕКС(Логика_tb[#Все];СТРОКА()-1;1))="а"))
тЭг таки. [vba]Код
=ИНДЕКС((Участник_УПК_муж_род[#Все];Участник_УПК_жен_род[#Все]);ПОИСКПОЗ(ИНДЕКС(ИНДЕКС(Основное_tb[#Все];;1);ПОИСКПОЗ(СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(ИНДЕКС(Логика_tb[#Все];СТРОКА()-1;1);" ";ПОВТОР(" ";37));37));ИНДЕКС(Основное_tb[#Все];;2);));ИНДЕКС(Участник_УПК_муж_род[#Все];;1););СТОЛБЕЦ()-1;1+(ПРАВБ(ИНДЕКС(Логика_tb[#Все];СТРОКА()-1;1))="а"))
[/vba] Автор - Nic70y Дата добавления - 27.01.2019 в 19:30