Автор Тема: Не можу розібратися в формулі Excel  (Прочитано 359 раз)

Оффлайн Pazan

  • Посетитель
  • **
  • Сообщений: 53
  • Репутация: +0/-0
Не можу розібратися в формулі Excel
« : 31 Октября 2016, 14:54:13 »
Вітаю,
у Книзі є 2 аркуші:
Ос_дані
ПІБ

Ос_дані містить: А1 - Прізвище, В1 - Ім’я, С1 - По батькові
ПІБ містить: А1 - Прізвище ініціали, В1 Код ДРФО і т.д.

У комірці А1 дані беруться з листа 1_Ос_дані за формулою:
=CONCATENATE(Ос_дані!A2;" ";(LEFT(Ос_дані!B2;1));". ";(LEFT(Ос_дані!C2;1));".")

Усе було б добре, але зустрічаються ПОДВІЙНІ ІМЕНА, наприклад, Ілона-Марія, Оксана-Анна і т.д.

Для цих випадків вирішив змінити формулу на таку:

=CONCATENATE(Ос_дані!A3;" ";(CONCATENATE(LEFT(Ос_дані!B3;1);"."));(CONCATENATE(MID(Ос_дані!B3;FIND("-";Ос_дані!B3;1);2);"."));(LEFT(Ос_дані!C3;1));".")

Вона працює лише, коли є подвійні імена. Коли звичайне ім’я, то видає помилку #VALUE.

Якось можливо пов’язати ці дві формули? Для наочності прикріпив скріншоти

Форум журнала "Домашний ПК"

Не можу розібратися в формулі Excel
« : 31 Октября 2016, 14:54:13 »

Оффлайн aNGeL

  • Ветеран
  • ******
  • Сообщений: 9 223
  • Репутация: +145/-15
  • ЗаБияКо
Re: Не можу розібратися в формулі Excel
« Ответ #1 : 31 Октября 2016, 15:25:06 »
Логична такая ошибка. Так как ты поменяв формулу - идет поиск по знаку "-" только. Все остальное выдает ошибку.
Тебе нужно смотреть в сторону функциий "IF" и "ELSE". И идти по алгоритму - есть "-" нет - то делать как раньше, иначе делать по новой формуле.
[CCCР]: MC-1, Тетрарх, ЛТП, Т-127, СУ-76И, Валентайн II, Матильда IV, Черчилль III,  ИС-7, ИС-4, Объект 268, Объект 261
[Германия]: Maus [США]: T1E6, T7 Combat Car [Британия]: Light Mk. VIC [Китай]: Type59 [Япония]: Type 97 Te-Ke

Оффлайн max.sim

  • Модератор
  • Ветеран
  • ***
  • Сообщений: 7 129
  • Репутация: +306/-5
  • Унылый старикашка :-(
Re: Не можу розібратися в формулі Excel
« Ответ #2 : 31 Октября 2016, 15:37:15 »
 Нужно было поставить проверку, есть ли вообще символ "-" в искомом тексте.

Для цих випадків вирішив змінити формулу на таку:

=CONCATENATE(Ос_дані!A3;" ";(CONCATENATE(LEFT(Ос_дані!B3;1);"."));(CONCATENATE(MID(Ос_дані!B3;FIND("-";Ос_дані!B3;1);2);"."));(LEFT(Ос_дані!C3;1));".")
вроде бы так работает.
=CONCATENATE(Ос_дані!A3;" ";CONCATENATE(LEFT(Ос_дані!B3;1);".");IF(ISERROR(FIND("-";Ос_дані!B3;1));"";CONCATENATE(MID(Ос_дані!B3;FIND("-";Ос_дані!B3;1);2);"."));LEFT(Ос_дані!C3;1);".")

И у тебя что-то слишком много лишних (), не знаю, нужно ли это вообще даже в целях совместимости.  ;)
« Последнее редактирование: 31 Октября 2016, 15:39:24 от max.sim »

Оффлайн Pazan

  • Посетитель
  • **
  • Сообщений: 53
  • Репутация: +0/-0
Re: Не можу розібратися в формулі Excel
« Ответ #3 : 01 Ноября 2016, 14:34:03 »
Нужно было поставить проверку, есть ли вообще символ "-" в искомом тексте.
Про це не подумав. Саме із-за цього формула і не працювала. Тепер все гаразд. Дякую

Форум журнала "Домашний ПК"

Re: Не можу розібратися в формулі Excel
« Ответ #3 : 01 Ноября 2016, 14:34:03 »