Новости:

Подпишитесь на рассылку новых сообщений форума через службу рассылок: Subscribe.ru

Главное меню

Размерные сетки

Автор ZORRO2005, 08.05.2011, 04:38

« назад - далее »

ZORRO2005

Друзья,
задачка во вложении.
Интересны разные варианты решения.
Яндекс-деньги: 410011658492153

kimtan

#1
Сергей, давай раскошеливайся на объяснения  :). Ничего не понял  :(
Единственное что понял:
Можно СМЕЩ() из-за летучести заменить на ИНДЕКС() (хотя тормозить не должно - взаимосвязанных данных немного)
Например, на листе "Подстановка", вместо: =ЕСЛИ(ЕНД(ПОИСКПОЗ(L$2;СМЕЩ($AW$2;ПОИСКПОЗ($J3;$AV$3:$AV$8;0);;;16);0));"";1), можно: =ЕСЛИ(СЧЁТЕСЛИ(ИНДЕКС($AW$3:$BL$8;ПОИСКПОЗ($J3;$AV$3:$AV$8;););L$2);1;"")
Webmoney: E350157549801 Z116603216205 R268084006579

ZORRO2005

1000 извинений.
Не тот файл прикрепил.
Сейчас нормальный.
Яндекс-деньги: 410011658492153

MCH

#3
так подойдет?

ZORRO2005

MCH,
да, очень хорошо.
Спасибо!

Интесно посмотреть еще решения.
Яндекс-деньги: 410011658492153

ZORRO2005

Никак не соображу, как превратить 36-40/2 в массив {36;36,5:37;37,5:38;38,5:39;39,5:40}

С помощью =СТРОКА(ДВССЫЛ(ЛЕВСИМВ($B4;2)&":"&ПСТР($B4;4;2)))+ЕСЛИ(ДЛСТР($B4)>5;{0;0,5})
получаю {36;36,5:37;37,5:38;38,5:39;39,5:40;40,5}
никак не  получается отсечь последнюю цифру.
Яндекс-деньги: 410011658492153

_Boroda_

#6
а так:
=СТРОКА(ДВССЫЛ(ЛЕВСИМВ($B4;2)*2&":"&ПСТР($B4;4;2)*2))/2

Итоговый файл с полным расчетом довложил
Скажи мне, кудесник, любимец ба'гов...



Яндекс-деньги: 41001632713405
Webmoney: R289877159277; Z102172301748; E177867141995

kimtan

#7
Можно попытаться без массивов, если конечно есть такая возможность...
Webmoney: E350157549801 Z116603216205 R268084006579

MCH

#8
Поправил свою формулу, чтобы была коректна и немного ее сократил.
Но все равно получилось не так изящно как и Игоря (kimtan)

DV68

#9
Вариация по решению Игоря:
=ПОВТОР(1;((C$2&"">=ПСТР($B3;1;2))*(C$2&""<=ПСТР($B3;4;2))*((ДЛСТР($B3)>5)+(Ч(C$2)>0)))>0)
и свой вариант:
=ПОВТОР(1;СЧЁТ(1/(ЕСЛИ(ДЛСТР($B3)=5;Ч(C$2);C$2)&{" ":""}>ПСТР($B3;{1:4};2)))=1)

ZORRO2005

#10
MCH, _Boroda_, kimtan, Dmitr68 и все кто думал над задачкой,
ОГРОМНОЕ спасибо!

Отдельное спасибо _Boroda_ за:
Цитироватьа так:
=СТРОКА(ДВССЫЛ(ЛЕВСИМВ($B4;2)*2&":"&ПСТР($B4;4;2)*2))/2
Ну а ПОВТОР() - вообще жесть!

Выложу и свое решение, которое у меня было готово перед тем как задать вопрос.
Но буду использовать чужое. ;)
Яндекс-деньги: 410011658492153

kimtan

Сергей, хороший вариант!
Несмотря на то, что используются текстовые функции и формула массива, почти не уступает по скорости обработки предложенным немассивным вариантам.
Webmoney: E350157549801 Z116603216205 R268084006579