Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 След.
Усовершенствование формул. Избушка формУлистов.
 
{quote}{login=Саша}{date=05.02.2010 02:57}{thema=}{post}Можно ещё как-то так:  
=МАКС(МУМНОЖ({-1;1};НАИМЕНЬШИЙ(((A5:X5=0)*СТОЛБЕЦ(A5:X5));СТОЛБЕЦ(A5:W5)+{0:1}))-1)  
При отсутствии ненулевых значений=0  
При отсутствии нулей=-1  
От -1 можно избавиться, растянув диапазоны вправо на ещё один заведомо пустой столбец.{/post}{/quote}  
круто!  
я думал над мумнож но правильную конструкцию не придумал
Как рассчитать допустимое отклонение?
 
Во первых спасибо за хорошее пояснение.  
Во вторых о грустном....  
Вначале нужно проверить гипотезу о том что    
количество неактивных абонентов у интернет-провайдера связано с    
тем что конкурент начинает предпринимать активные действия и переподключать абонентов  
а) В сезон отпусков количество неактивных абонентов растёт, но конкурент тоже не париться, а если и париться то в турции  
б) уходят к конкуренту как раз активные абоненты которые увидели счёт и прослезились  
 
а в целом задача состоит в обнаружении роста неактивных абонентов на фоне статистического шума ---полностью эквивалентно прогнозированию роста или падения курса акций, специалисты окучивающие данную область на форуме есть  
ищите......
Усовершенствование формул. Избушка формУлистов.
 
зы Да а Victtur спасибо за напоминание про использование подставить
Усовершенствование формул. Избушка формУлистов.
 
{quote}{login=kim}{date=05.02.2010 08:49}{thema=}{post}Решение было, хотелось бы еще сумму этого диапазона - решения пока нет. Вот оригинал.{/post}{/quote}  
пример применительно к исходной задаче  
формула коряво изменена, чтоб корректно считалась цепочка где нулей нет  
(правильней если(енд(....)) )  
 
можно посчитать конечно и сумму но даже для цепочек обрамлённых нулями формула будет аццкая с многочисленным пересчётом одного и того же.  
то есть либо имена, либо дополнительные столбцы
Усовершенствование формул. Избушка формУлистов.
 
{quote}{login=vikttur}{date=05.02.2010 10:34}{thema=}{post}"Потуги ночных поисков привели к интересному полуфабрикату (см. пример).  
Работает с диапазоном не более 20 ячеек"  
Ошибся - только не более 15.  
 
По этому примеру ДЛСТР после функции ВЫЧИСЛИТЬ даст требуемый результат, но это уже не одна формула.{/post}{/quote}  
 
=МАКС(МАКС(ЧАСТОТА(СЧЁТЕСЛИ(СМЕЩ(A4;0;0;1;СТОЛБЕЦ(A4:X4));"");СЧЁТЕСЛИ(СМЕЩ(A4;0;0;1;СТОЛБЕЦ(A4:X4));"")))-1;ПОИСКПОЗ(0;1*A4:X4;0)-1)  
 
1) С помошью конструкции СЧЁТЕСЛИ(СМЕЩ(....;массив_ширин) считаем количество встретившихся "" в первой ячейке; в первых 2 ячейках; в первых 3 ячейках и т.д  
(моё спасибо 2 KL;@nic;слэн)  
2)с помошью ЧАСТОТА(массив;массив)считаем количество повторяющихся значений;  
в полученном выше массиве каждой непрерывной цепочке соответствует одно число; при встрече нуля-пусто число увеличивается на единицу - т.е индетификатор каждой непрерывной цепочки число нулей встретившихся до начала цепочки.  
Функция ЧАСТОТА ставит цифру только на месте первой встречи определённого числа, всем последующим вхождениям данного числа ставится в сооответствие нуль  
(моё спасибо 2 слэн)  
3)МАКС(ЧАСТОТА(СЧЁТЕСЛИ(СМЕЩ(A4;0;0;1;СТОЛБЕЦ(A4:X4));"");СЧЁТЕСЛИ(СМЕЩ(A4;0;0;1;СТОЛБЕЦ(A4:X4));"")))-1  
работает корректно если вся цепочка начинается с нуля  
НО если вс цепочка наяинается с числа и наиболее длиная цепочка первая; то вычитать единицу для этой цепочки не нужно.  
Чтобы обеспечить правильный счёт ввводиться второй МАКС  
МАКС(наибольшая длина цепочки начинающейся с нуля; длина первой цепочки)  
 
-----------------  
химмаш<->сортировка
формула
 
например так (формула масива):  
=СУММ(ЕСЛИ($B$2:$F$4=I2;$C$2:$G$4;0))  
решение соответствует файлу примера, а не формуле из второго поста  
используется то, что функции сумм и если могут работать с прямоугольными диапазонами (матрицами из ячеек на листе)
сортировка требуемых строк из разных книг в нову
 
Создаёте файл оглавления, куда вставляете две ?гиперссылки?  
Создаёте файл выбор1 соответствующий первой позиции вашего ?оглавления?  
где пишете шапку - наименование столбцов и три-четыре строки с данными, позволяющими понять как Вы выбираете ?позиции-оборудование?  
Аналогично создаёте файл Выбор2 соответствующий второй ?гиперссылки? - странице оглавления.  
Создаёте файл Смета где вручную показываете что должно получиться из имеющихся ?файлов? с данными  
Всё зипуете и отправляете как пример.  
 
А затем главное - открываете макрос написанный для Вас The_Prist, берёте книгу Уокенбаха и самостоятельно разбираетесь, что делает каждая из строк макроса, попутно обращаясь на форум с внятными вопросами
сортировка требуемых строк из разных книг в нову
 
{quote}{login=The_Prist}{date=12.01.2010 01:51}{thema=Re: Re: }{post}  
3. Понизить уровень безопасности макросов с высокого на средний либо низкий.{/post}{/quote}  
Нужно не забывать что для индивидуального пользования существует  
программы/office/службы_office/цифровой_сертификат_для_проек­тов_VBA  
и соответственно  
VBA/tools/digital_signature
Создание специальных фильтров.
 
если есть возможность восстановления по id  
то можно попутно с фильтацией уникальных пятёрок осуществить и их сортировку  
это и подразумевалось в предудущем сообщении  
 
пример в файле
послать значение управляющей клавиши в окно выпадающего списка? (winapi?)
 
А вобще задача связана не с вытягиванием чего то из списков, а с минимизацией нажатий клавиш при вводе данных
послать значение управляющей клавиши в окно выпадающего списка? (winapi?)
 
Если ячейке назначена проверка данных то  
используя alt+стрелкавниз можно развернуть соответствующий выпадающий список  
затем используя стрелкавниз стрелкавверх перемещаться по этому списку.  
 
Как послать код клавиши (стрелкавниз стрелкавверх) непосредственно в окно выпадающего списка?  
 
Конструкция    
SendKeys "%{down}" 'развернуть список  
SendKeys "{down}" 'стрелкавниз  
игнорирует второе предложение список разворачивается пользователь в нём что-то выбирает, макрос продолжает работу со строки  после  SendKeys "{down}" (вернее строку то он обрабатывает, но при этом ничего не происходит)  
 
Конструкция  
SendKeys "%{down}" 'развернуть список  
DoEvents  
SendKeys "{down}" 'стрелкавниз  
посылает вторую стрелкувниз непосредственно в эксель  
список разворачивается пользователь в нём что-то выбирает, обработка SendKeys "{down}" , осуществляет переход к ячейке строкой ниже.  
 
Как отправить "стрелкавниз" непосредственно в окно выпадающего списка?
Глюки (баги, ошибки) в Excel
 
Это не совсем глюк, а скорее ограничение на конструирование формул массивов  
Есть массив чисел  
Формула {=НАИБОЛЬШИЙ((СМЕЩ(B2:J2;СТРОКА(1:5);0;;));2)}  
возвращает столбец    
2 наибольший из 3 строки (из B3:J3)  
2 наибольший из 4 строки  
и т.д  
но при этом Формула {=сумм(НАИБОЛЬШИЙ((СМЕЩ(B2:J2;СТРОКА(1:5);0;;));2))}  
возвращает строку  
2 наибольший из 2 столбца (из B3:B7)  
2 наибольший из 3 столбца  
и т д.
Найти в столбце значения по маске, а все символы, кроме маски удалить
 
Кстати ded_luka это не дед Люка из звёздных войн, а персонаж из "На дне"  
горького  
Кстати мне приглянулось, уже на данном форуме dl@kartoshka.ru, не как адрес а как псевдоним.
Найти в столбце значения по маске, а все символы, кроме маски удалить
 
Приветствую Vikttur!  
Честно признаюсь что для меня эксель, особенно в виде формул массива, не работа? а развлечение, своего рода разминка ума. То есть интересно не сколько решение конкретной задачи, сколько исследование возможных путей её решения. Для экселя это в первую очередь поиск решения задачи с помощью ограниченных средств предоставляемых экселем.  
Если выразился туманно, то и не страшно  
 
И как я уже писал Mazay(u)ZR не надо реверансов, все мы в одном корыте, тем более что я испытываю глубокое уважение к "окопным бойцам" форума, благодаря которым форум живёт, на него когда есть желание можно зайти, и получить немалое удовольствие и пользу.  
 
зы. Вот бы ещё была возможность говорить о театре, политике, философии и женщинах!  
----  
DL/Сергей
Как получить значение выделенного текста в ячейке??
 
{quote}{login=Bobgood}{date=17.11.2008 03:43}{thema=}{post}Необходимо получить данные именно выделенного текста, т.е. при выделении мышкой нужно понять что там выделенно. С помощью VBA естественно, Ctrl+C не канает! =)){/post}{/quote}  
 
С помощью VBA это невозможно, только програмированием под windows.  
как только вы зашли в ячейку, эксель переходит в состояние "редактирование пользователем", прошу не беспокоить, пока пользователь не сделает всё что нужно. В определённом смысле сделать это с помощью VBA то же самое что мюнхгаузену вытянуть себя самого из болота за волосы. Нужен второй пользователь-программа которая видит окно экселя и видит действия пользователя в этом окне. И в зависимости от анализа текущей ситуации предпринимает те или иные действия.
Скопировать N ячеек выбранной строки
 
='k!'!A1 и ='k'!A1  ссылки на разные листы,  
также как и    
Sheets("АрхивИзм") и Sheets("АрхивИзм!")
Очередные тарифы
 
{quote}{login=}{)pa}{date=13.11.2008 04:59}{thema=Re: }{post}{quote}{login=}{date=13.11.2008 12:26}{thema=}{post}=НАИМЕНЬШИЙ(B10:F10+0;3+(СУММ(1*((РАНГ($B$3:$F$3;$B$3:$F$3)>3)*((B10:F10)<=НАИМЕНЬШИЙ(B10:F10;3))))=2)){/post}{/quote}  
 
 
Очень интересное решение! Очень оригинальное! Скажите, а зачем Вы формуле поставили "+0"?{/post}{/quote}  
 
Вобще говоря в данном случае этого можно и не делать.  
Добавление или недобавление +0 зависит от того как мы хотим рассматривать пустые ячейки при работе функции наименьший/наибольший(диапазон;К)  
Без добавления нуля пустые ячейки игнорируются  
С добавлением нуля пустая ячейка рассматривается как ноль  
Т.е если в диапазоне есть пустые ячейки и числа > 0 то  
Наименьший(диапазон;к)=Наименьший(диапазон+0;к+количество_пустых_ячеек)
Очередные тарифы
 
{quote}{login=Raptor}{date=13.11.2008 12:13}{thema=Re: }{post}{quote}{login=ded luka}{date=13.11.2008 11:27}{thema=}{post}=НАИМЕНЬШИЙ(B10:F10+0;3+(СУММ(1*((РАНГ($B$3:$F$3;$B$3:$F$3)>3)*((B10:F10)<НАИМЕНЬШИЙ(B10:F10;3))))=2)){/post}{/quote}  
Ммм... Эта формула не всегда корректно учитывает исходные условия, поэтому искажает результат. Попробуйте применить ее в исходной таблице с таким порядком тарифов: 50000;45000;20000;21000;15000. Да, наибольший из 3х минимальных будет найден, но не будет учтено условие использования минимум 2х тарифов топ3 компаний.{/post}{/quote}  
 
Хорошо пусть будет    
=НАИМЕНЬШИЙ(B10:F10+0;3+(СУММ(1*((РАНГ($B$3:$F$3;$B$3:$F$3)>3)*((B10:F10)<=НАИМЕНЬШИЙ(B10:F10;3))))=2))  
проверяем на попадание в антитоп не два а три минимальных тарифа  
 
зы Raptor загляните в "для Raptor", буду благодарен за ответ
Очередные тарифы
 
=НАИМЕНЬШИЙ(B10:F10+0;3+(СУММ(1*((РАНГ($B$3:$F$3;$B$3:$F$3)>3)*((B10:F10)<НАИМЕНЬШИЙ(B10:F10;3))))=2))
Как уникально ранговать столбец с повторяющимися числами
 
Просто удивнул язык :)  
----------------------  
from Ekaterinburg
Проблема капитализации в формуле
 
{quote}{login=portuy}{date=12.11.2008 02:40}{thema=Re: }{post}{quote}{login=ded_luka}{date=06.11.2008 11:59}{thema=}{post}всего вместе с процентами  
итого= суммавклада*(1+процент)^кпериодов=  
=суммавклада+[процент*суммавклада]*[(1+процент)^кпериодов-1]/процент
 
капитализация ежемесячных процентов на основной вклад  
=[процент*суммавклада]*[(1+процент)^кпериодов-1]/процент
капитализация ежемесячных выплат  
=выплата*[(1+процент)^кпериодов-1]/процент{/post}{/quote}
 
А непосредственно в файле как это реализовать???{/post}{/quote}  
 
Формулами в ячейках!  
 
(вместо имён в посте подставить соответствующие адрреса ячеек)
Очередные тарифы
 
{quote}{login=DL}{date=11.11.2008 02:09}{thema=Re: пжлст}{post}  
Меня честно говоря заинтересовала задача:  
выбрать по условию1 но так чтобы не более 2 выбранных удовлетворяло условию2.  
Если с ипользованием дополнительных столбцов решение такой задачи понятно,  
то вопрос о существовании приемлемого решения одной формулой под вопросом.  
учитывая что ясности нет у меня сложно требовать понимания от Вас.  
{/post}{/quote}  
 
!!!!!!!!!!!  
 
{quote}{login=Юpa}{date=11.11.2008 02:09}{thema=Re: пжлст}{post}  
но нельзя это проделать в таблице, которую я приложил, пожалуйста {/post}{/quote}  
 
Это вопрос или утверждение?  
----  
DL
Очередные тарифы
 
{quote}{login=}{)pa}{date=11.11.2008 02:09}{thema=Re: пжлст}{post}{quote}{login=ded luka}{date=11.11.2008 12:35}{thema=пжлст}{post}пример естественно условный,  
но можете поменять исходные данные в синих областях,  
и посмотреть что получиться  
 
в книге три листа соответствующие наиболее вероятным комбинациям исходных данных (см подписи на листах)  
(сами формулы на разных листах одни и те же - см пост выше){/post}{/quote}  
 
Не сочтите меня умственно отсталым, но нельзя это проделать в таблице, которую я приложил, пожалуйста. Так как Ваша схема не укладывается у меня в голове, применительно к моему примеру, хотя я чувсвтвую, что она далеко не лишена рационального зерна.  
Спасибо за потраченное время.{/post}{/quote}  
 
Меня честно говоря заинтересовала задача:  
выбрать по условию1 но так чтобы не более 2 выбранных удовлетворяло условию2.  
Если с ипользованием дополнительных столбцов решение такой задачи понятно,  
то вопрос о существовании приемлемого решения одной формулой под вопросом.  
учитывая что ясности нет у меня сложно требовать понимания от Вас.  
 
{quote}{login=}{)pa}{date=11.11.2008 02:09}{thema=Re: пжлст}{post}  
но нельзя это проделать в таблице, которую я приложил, пожалуйста{/post}{/quote}  
Это вопрос или утверждение?
Очередные тарифы
 
пример естественно условный,  
но можете поменять исходные данные в синих областях,  
и посмотреть что получиться  
 
в книге три листа соответствующие наиболее вероятным комбинациям исходных данных (см подписи на листах)  
(сами формулы на разных листах одни и те же - см пост выше)
Очередные тарифы
 
=макс(ЕСЛИ((направление=H1)*(((направление<>H1)*2*МАКС(тариф)+(ЕСЛИ(рейтинг<4;тариф;тариф+МАКС(тариф))))<=НАИМЕНЬШИЙ((направление<>H1)*2*МАКС(тариф)+(ЕСЛИ(рейтинг<4;тариф;тариф+МАКС(тариф)));3));тариф;0))  
 
подразумевается что исходные данные нормальная таблица эксель  
направление/рейтинг_перевозчика/тариф  
все строки заполнены  
в H1 - искомое напрвление  
 
использован метод штрафных функций  
если направление<>искомому + 2*максимальных тарифа  
если рейтинг_перевозчика > 4 +1*максимальный тариф  
Из массива тарифов с наложением штрафа  
(направление<>H1)*2*МАКС(тариф)+(ЕСЛИ(рейтинг<4;тариф;тариф+МАКС(тариф)))  
выбираем три наименьших  
по ним определяем их реальный тариф,  
остальные тарифы обнуляем
подсчет значений без учета повторяющихся
 
разумеется не цифры, а числа
подсчет значений без учета повторяющихся
 
Если все значения цифры и в столбце отсутстуют пустые строки  
=СУММ(--(ЧАСТОТА(A1:A15;A1:A15)>0))
Как уникально ранговать столбец с повторяющимися числами
 
В первой строке столбца с рангами  
=СЧЁТЕСЛИ($A$1:$A$15;"<"&A1)+СЧЁТЕСЛИ($A$1:$A1;A1)  
и протянуть на весь столбец.  
 
Ведь  ранг по порядку и без повторов это  
количество значений меньше заданного + количество уже встретившихся значений равных заданному.  
 
--------  
From where you are, Jack?
Понимаю, что нужно сделать но не знаю как)))
 
{quote}{login=Senya}{date=07.11.2008 12:40}{thema=}{post}Все верно. Но раз уж Вы файлик не видели, то прилагаю сам макрос, что я предложил Денису.  
 
Private Sub Worksheet_Activate()  
ActiveSheet.Calculate  
Selection.AutoFilter Field:=1, Criteria1:="<>"  
End Sub{/post}{/quote}  
 
 
ну раз уж никаких кнопок на листе не предусмотрено,  
то скрыть кнопочку фильтра  
 
Private Sub Worksheet_Activate()  
ActiveSheet.Calculate  
Selection.AutoFilter Field:=1, Criteria1:="<>"  
       For Each elmShp In ActiveSheet.Shapes  
       elmShp.Visible = msoFalse  
       Next  
End Sub
Понимаю, что нужно сделать но не знаю как)))
 
{quote}{login=Senya}{date=07.11.2008 12:27}{thema=Re: }{post}{quote}{login=Денис}{date=07.11.2008 12:18}{thema=}{post}Похоже но при повторном внесении изменений в лист "Расчет" автофильтр не срабатывает(({/post}{/quote}  
Каких изменений и куда (в какие ячейки) вносили?{/post}{/quote}  
Если в область автофильтра внести формулы, то пересчёт формул не вызывает обновления автофильтра. Те строки которые были скрыты остаются скрытыми независимо от нового значения формулы, то же самое для видимых строк.  
Единственный выход это отменить автофильтр(или показать все) и назначить заново(или вторично назначить автофильтру уже используемый в нём критерий)  
 
зы Файлы примеров не смотрел.
Страницы: 1 2 След.
Наверх