|
|
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
yuniki DeggasadХотя я ничего против именованных диапазонов не имею и активно их использую, особенно динамические. Просто не понятно с чего такие утверждения... Что непонятно, так это то, с чего так кипятиться. Я что , как-то лично за что-то задел, что надо растопыривать всякие пальцы ? Но понятно становится, если смотреть на суть . А проблема действительно имеется, и исходный вопрос всего лишь одно из многочисленных ее проявлений - У Excel много чего не достает для удобной работы , и мое решение практически полностью устраняет эту проблему. Извините, действительно погорячился, спишим на мою юность. Вы просто не предлагаете своё решение, а утверждаете, что оно единственно верное, а это уже ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 08:06 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
Deggasad Извините, действительно погорячился, спишим на мою юность. Вы просто не предлагаете своё решение, а утверждаете, что оно единственно верное, а это уже ... Ну и молодец, что извинился. SQL.ru за годы не меняется. А решение заключается в идее, которая изложена выше.Главное это. У меня-то просто имеется целая VB библиотека с реализацией ее и кучи всего другого, которую я использую, а прелагать ее сюда не имеет смысла, Поэтому предлагаю только одну из идей этой библиотеки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 10:26 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
yuniki Deggasad Извините, действительно погорячился, спишим на мою юность. Вы просто не предлагаете своё решение, а утверждаете, что оно единственно верное, а это уже ... Ну и молодец, что извинился. SQL.ru за годы не меняется. А решение заключается в идее, которая изложена выше.Главное это. У меня-то просто имеется целая VB библиотека с реализацией ее и кучи всего другого, которую я использую, а прелагать ее сюда не имеет смысла, Поэтому предлагаю только одну из идей этой библиотеки. ну а если для примера выложить какое-нибуть удачное применение, только чур в Exele, тогда можно будет поговорить предметнее. И я смогу вызказать своё мнение! И другие! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 12:01 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
Deggasad ну а если для примера выложить какое-нибуть удачное применение, только чур в Exele, тогда можно будет поговорить предметнее. И я смогу вызказать своё мнение! И другие! Дело в том, что это дело у меня не очень готово для публичного обозрения, - только описание интерфейсов вызовов есть, Ну вот ,если не лень качать 5 кусков по 100Kb, то пожалуйста. Обращу внимание, кроме очевидного из Книги1.xls использования , что один и тот же диапазон и его поддиапазоны , можно интерпретировать и поддерживать под разными именами. ЗЫ . Не забудь перед открытием Книга1 зарегить DDL' ку как описано в info.txt ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 14:52 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
ну и 5-й последний ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 14:55 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
Ничё не понял. Какой мне от этого прок! Наверное мне ещё рано... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 15:49 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
Так что ты должен такого особенного понять ? Просто запускай Книга1.xls (только прежде зарегистрируй DLL'ку see info.txx ) и смотри как считается сумма в ячейке E4 из столбца Поле2, который разумеется м.б. произвольной длины - любой что вручную наколотим ему. Ps . Надо еще упомянуть , что такие именованные таблицы могут быть разорванными - т.е. сосотоять из нескольких несвязанных Range, что тоже может оказываться оплезным. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 16:01 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
yunikiТак что ты должен такого особенного понять ?Идею. Он должен был понять почему твоя идея лучше чем его. Пока ты даже меня не убедил что твоя идея имеет хоть какие-то плюсы. yunikiПросто запускай Книга1.xls (только прежде зарегистрируй DLL'ку see info.txx )Круто. Регестрировать специальную длл для редко нужных расчетов в Excel? Ты стреляешь из пушки по воробьям. Если человек способен использовать сторонюю dll ему уже не нужно использовать Excel для больших расчетов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 17:36 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
yunikiТак что ты должен такого особенного понять ? Просто запускай Книга1.xls (только прежде зарегистрируй DLL'ку see info.txx ) и смотри как считается сумма в ячейке E4 из столбца Поле2, который разумеется м.б. произвольной длины - любой что вручную наколотим ему. Ps . Надо еще упомянуть , что такие именованные таблицы могут быть разорванными - т.е. сосотоять из нескольких несвязанных Range, что тоже может оказываться оплезным. В примере Диапазон Поле2 Как раз таки постоянный и нифига наколачивать не получается. А чтобы сделать Динамический диапазон и посчитать сумму по нему совсей не нужно (можно сказать никому не советую) устанавливать никаких библиотек и писать макросы. Так вот я и думаю зачем всё это: 1) Толи я не понимаю 2) Толи кто-то штаны через голову одевает (только без обид - скорее всего вариант 1) Именованный диапазон Вставка - Имя -Присвоить - Формула: (для текстовых данных) =ИсхДляГраф!$G$3:ИНДЕКС(ИсхДляГраф!$G$3:$G$30;ПОИСКПОЗ("яяяяя";ИсхДляГраф!$G$3:$G$30)) Всего-то делов или как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 17:37 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
KL (XL) Привет. В таком случае след. модифицированная формула должна быть несколько быстрее твоего варианта: =СУММ(B9:ИНДЕКС(B:B;МИН(ЕСЛИ($A9:$A1000="";СТРОКА($A9:$A1000)-1)))) (формула массива - подтверждается одновременным нажатием CTRL+SHIFT+ENTER) или еще так: =СУММ(B9:ИНДЕКС(B9:B10000;ПОИСКПОЗ(ИСТИНА;ЕПУСТО(A9:A10000);0)-1)) (формула массива - подтверждается одновременным нажатием CTRL+SHIFT+ENTER) или так: =СУММ(B9:ИНДЕКС(B9:B10000;ПОИСКПОЗ(ИСТИНА;A9:A10000="";0)-1)) (формула массива - подтверждается одновременным нажатием CTRL+SHIFT+ENTER) 2 KL (XL) Как считаешь удачная ли эта формула для нахождения первого больше нуля знаяения??? =СУММПРОИЗВ(ПОИСКПОЗ(ИСТИНА;J4:O4>0;0)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 18:58 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
White Owl Круто. Регестрировать специальную длл для редко нужных расчетов в Excel? Ты стреляешь из пушки по воробьям. А причем тут "Регестрировать специальную длл " ? Это просто проблема распространения. А то, что стреляю "из пушки" - так именно так, только не по воробьям - зачем обижать воробьев ?. Эта DLL не предназначена для воробьев. Она весьма универсальна, я ее использую во всех приложениях. Она вообще у нас стоит на сервере в одном месте, откуда и подцеплена юзеревскими рабочими станциями. И любой может легко использовать любые ее функции. От суммы прописью для Euro,$,руб или ФИО в род падеже до создания развитых отчетов в WORD,Excel, цепляющих и объединяющих данные из ЛЮБЫХ источников , причем в последнем случае пользолвателю не нужно программировать, если не считать програмированием запись SQL кода (SELECT,INSERT,UPDATE,DELETE) . White Owl Если человек способен использовать сторонюю dll ему уже не нужно использовать Excel для больших расчетов. Так dll способен использвать любой 3 классник - так из этого еще не следует, что уже не нужно использовать Excel . Чего там использовать - установил ( regsvr32 путькDLLфайлу ) и используй ее функции в VBA. Разумеется пару строчек кода нужно знать как написать. Вообще речь не идет о том , чтоб вообще избавиться от VBA. Хотя в большинстве случаев в этой библиортеке именно это и возможно - только знай как ее установить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 19:52 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
Deggasad В примере Диапазон Поле2 Как раз таки постоянный и нифига наколачивать не получается. А чтобы сделать Динамический диапазон и посчитать сумму по нему совсей не нужно (можно сказать никому не советую) устанавливать никаких библиотек и писать макросы. Ты DLL зарегистрировал-ли ? Если да , то дожен увидеть , как этот "постоянный диапазон" превращается в переменный только добавлять строчки следует непрерывно одну под другой (для того и описаны интерфейсы вызовов функций DLL"ки) А насчет писания макросов, так две строки VBA кода вряд ли можно назвать макросом. Если ты вообще в VBA не программируешь, то вряд ли должен решаться на такие советы. Я знал многих людей, никак не связанных с программированием (экономистов) , которые по своему по рабоче-крестьянско-экономистки писали разные нужные им программульки на VBA при этом даже получая удовольствие, Поэтому, вряд ли стоит такое советовать. И потом, как же ты прежде упомянул, что используешь динамические именованные диапазоны без VBA - непонятно. PS. ALT-F11 - и все сразу прояснится любому крестьянину. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 20:03 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
yuniki Deggasad В примере Диапазон Поле2 Как раз таки постоянный и нифига наколачивать не получается. А чтобы сделать Динамический диапазон и посчитать сумму по нему совсей не нужно (можно сказать никому не советую) устанавливать никаких библиотек и писать макросы. Ты DLL зарегистрировал-ли ? Если да , то дожен увидеть , как этот "постоянный диапазон" превращается в переменный только добавлять строчки следует непрерывно одну под другой (для того и описаны интерфейсы вызовов функций DLL"ки) А насчет писания макросов, так две строки VBA кода вряд ли можно назвать макросом. Если ты вообще в VBA не программируешь, то вряд ли должен решаться на такие советы. Я знал многих людей, никак не связанных с программированием (экономистов) , которые по своему по рабоче-крестьянско-экономистки писали разные нужные им программульки на VBA при этом даже получая удовольствие, Поэтому, вряд ли стоит такое советовать. И потом, как же ты прежде упомянул, что используешь динамические именованные диапазоны без VBA - непонятно. PS. ALT-F11 - и все сразу прояснится любому крестьянину. Можно посмотреть некоторые из моих топиков и понять, что я как раз и отношушь к тому разряду экономистов, которые по вечерам любят упрошать себе и тругим жизнь путём написания небольших макросов! И очень часто это доставляет удовольствие - согласен. Я понимаю, что вы програмист и в этом понимаете больше меня, но только вы своими DDl как раз и отобъёте охоту у обычных экономистов задуматься лишний раз о том насколько это просто сделать в Экселе (выше я уже указал как это делается). Макросы я бы использовал только на стадии добавления именованных диапазонов, чтобы руками каждый не добавлять, а все столбцы сразу обозвать. А потом они уже сами смотрят где у них последняя строка. И сумму прописью без макросов тремя разными способами можно сделать и кстате этот вариант более приемлем для шаблонов документов, т.к. неизвестно кто и где его будет заполнять!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 20:28 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
yuniki White Owl Круто. Регестрировать специальную длл для редко нужных расчетов в Excel? Ты стреляешь из пушки по воробьям. А причем тут "Регестрировать специальную длл " ? Это просто проблема распространения.Вот именно что проблема распространения. Пойми, с Экселем работают в первую очередь люди очень далекие от каких-либо вопрос "распространения". Вот написать в листе сложную формулу - это понятно, а копировать кроме одного xls файла еще и какую-то dll, потом запускать командную строку и писать там страшную и совершенно незапоминаемую команду regsvr32 something.dll... это уже намного выше чем доступно простому юзеру. Даже если этот юзер очень опытен в самом Экселе. yunikiА то, что стреляю "из пушки" - так именно так, только не по воробьям - зачем обижать воробьев ?. Эта DLL не предназначена для воробьев. Она весьма универсальна, я ее использую во всех приложениях. Она вообще у нас стоит на сервере в одном месте, откуда и подцеплена юзеревскими рабочими станциями. И любой может легко использовать любые ее функции. От суммы прописью для Euro,$,руб или ФИО в род падеже до создания развитых отчетов в WORD,Excel, цепляющих и объединяющих данные из ЛЮБЫХ источников , причем в последнем случае пользолвателю не нужно программировать, если не считать програмированием запись SQL кода (SELECT,INSERT,UPDATE,DELETE) .Мдя... Ну вообще-то, я бы тебе посоветовал почитать учебники на тему что такое dll и что такое com-server, ты их явно не различаешь. Но судя по вопросу считать ли запись SQL код программированием или не считать, мои советы не помогут... yuniki White Owl Если человек способен использовать сторонюю dll ему уже не нужно использовать Excel для больших расчетов. Так dll способен использвать любой 3 классник - так из этого еще не следует, что уже не нужно использовать Excel . Чего там использовать - установил ( regsvr32 путькDLLфайлу ) и используй ее функции в VBA. Разумеется пару строчек кода нужно знать как написать. Вообще речь не идет о том , чтоб вообще избавиться от VBA. Хотя в большинстве случаев в этой библиортеке именно это и возможно - только знай как ее установить.Приходи ко мне в гости, я тебя посажу на телефон и ты будешь объяснять нашим юзерам как это все делать. Только учти что они (юзера) частенько спрашивают надо ли писать знак равенства в формуле или не надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 20:48 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
White OwlВот именно что проблема распространения. Короче ты мог бы обойтись одной этой фразой. Ты как-то не видишь того, что я говорю - и зачем-то, предпочитая поддеть меня на том, во что сам не вник , отсылаешь меня к учебникам по вопросу, который яйца выеденного не стоит. Могу просто по другому повторить то же самое : - Проблему распростарнения - не проблема. Она решается привлечением инсталлятора если требуется распространение. Просто у нас этого нет, но можно сделать. Нам этого не надо - все делается автоматически, централизованно - админ в нашей LAN этим занимается без всяких хлопот причем. Я вообще не собираюсь распротсранять эту библиотеку. - Юзеры разные , и я упомянул о тех , которые понимают что к чему. - Почему вообще ты решил , что нужно без программирования - непонятно ? - Ты как-то не обращаешь внимания - для чего весь это Excel придумывался. А между тем 99% юзеров его используют для создания отчетов из различных СУБД и их анализа. Причем , не те консольные операторы, которые кроме нибивания своих накладных ничего не знают, а пользователи среднего звена, которые как правило имеют высшее образование. А вы все свели просто к тому - как взять и посчитать сумму диапазона - какой смысл в этом вопросе, если он оторван от реальности ? а если смотреть на реальность , то получается то, что и высказал уже выше. Дело в подходе : Я считаю, что если есть удобный и полезный интструментарий, то его нужно установить и использовать по полной. Если ты считаешь, что не нужно использовать удобный инструмент, то это твой подход, вот и все. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 21:48 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
yuniki Причем , не те консольные операторы, которые кроме нибивания своих накладных ничего не знают, а пользователи среднего звена, которые как правило имеют высшее образование. А вы все свели просто к тому - как взять и посчитать сумму диапазона - какой смысл в этом вопросе, если он оторван от реальности ? а если смотреть на реальность , то получается то, что и высказал уже выше. Дело в подходе : Я считаю, что если есть удобный и полезный интструментарий, то его нужно установить и использовать по полной. Если ты считаешь, что не нужно использовать удобный инструмент, то это твой подход, вот и все. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 21:55 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
Причем , не те консольные операторы, которые кроме нибивания своих накладных ничего не знают, а пользователи среднего звена, которые как правило имеют высшее образование. Дело в подходе : Я считаю, что если есть удобный и полезный интструментарий, то его нужно установить и использовать по полной. Если ты считаешь, что не нужно Если я такой инструментарий дам кому нибуть у себя на работе, особенно босу с тремя его высшими образованиями и любовью к различным ERP, он меня всё-же повет. Юзерам, как вы нас там называете, нужны либо законченные вещи чтобы только на кнопочки жать (с определённым функцианалом, обеспечивающим право на жизнь), либо если в дебри лезть, то чтобы всё просто и понятно, с азов так сказать, чтобы можно было поиграться и что-то понять и остаться довольным от понятого! А вы все свели просто к тому - как взять и посчитать сумму диапазона - какой смысл в этом вопросе, если он оторван от реальности ? а если смотреть на реальность , то получается то, что и высказал уже выше. Нифига не оторвана от реальности. Как ни странно сижу сейчас этим как раз занимаюсь, только не просто ссумировать диапазоны, а с кучей условий, и чтобы удобно было сделал себе 30 динамических диапазонов, от 4 и до последней строки автоматом отслеживается. Потом сделал несколько списков на которые ссылаются условия ссумирования. И на основании полученных данных таблички, графики и всё такое. Завтра понесу шефу и пусть играется списками, анализирует, только исходныю инфу подливай и всё. И это можно кому угодно дать и без всяких макросов. Даже в ОО работает. Хотя мне бы самому на VBA проще было, но зачем всё итак просто смак! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 22:05 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
2 Deggasad > НУ вроде все объяснил уже, поэтому не хотите - выбросьте эту библиотеку в окно. Мне в общем-то достаточно того , как это используется у нас. А вот насчет : Deggasad сделал себе 30 динамических диапазонов, от 4 и до последней строки автоматом отслеживается. Вот только никак не могу понять - как сделал-то ? : Динамический именованный диапазон для меня - это когда юзер добавляет/удаляет ему вручную новые строки, а именованный Range автоматически при этом увеличивается/уменьшается. Это что можно как-то без макроса сделать ? Мне казалось, что у меня это сделано максимально просто - имеется, конечно, макрос - по одной строке на один диапазон . Могу написать такой , что будет одна строка на все отслеживаемые диапазоны. PS. Да, Может и можно , конечно, без макроса и я отстал не знаю новых версий(а может и старых;), т.к. использую в основном Excel2K (У нас-то стоят от 2K до 2003, поэтому и приходится под 2K писать, Да и в общем-то в 2K что хочется все можно, что и в более новых версиях. ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2007, 23:56 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
yuniki2 Deggasad > НУ вроде все объяснил уже, поэтому не хотите - выбросьте эту библиотеку в окно. Мне в общем-то достаточно того , как это используется у нас. А вот насчет : Deggasad сделал себе 30 динамических диапазонов, от 4 и до последней строки автоматом отслеживается. Вот только никак не могу понять - как сделал-то ? : Динамический именованный диапазон для меня - это когда юзер добавляет/удаляет ему вручную новые строки, а именованный Range автоматически при этом увеличивается/уменьшается. Это что можно как-то без макроса сделать ? Мне казалось, что у меня это сделано максимально просто - имеется, конечно, макрос - по одной строке на один диапазон . Могу написать такой , что будет одна строка на все отслеживаемые диапазоны. PS. Да, Может и можно , конечно, без макроса и я отстал не знаю новых версий(а может и старых;), т.к. использую в основном Excel2K (У нас-то стоят от 2K до 2003, поэтому и приходится под 2K писать, Да и в общем-то в 2K что хочется все можно, что и в более новых версиях. ) Да мне тоже по большому счёту всё-равно. Просто мне ваш подход напоминает знаете что - привязать к себе пользователей чтобы они думали, что это ой какая сложная штука и даже не пытались в этом разобраться, а каждый бы раз звали бородатого дядьку, который бы им в очередной раз говорил "Ну что же вы за бараны, ни фига без меня сделать не можете... Тут же блин через SQL всё делается..." Я лично не знаю что такое SQL... Соот ветсвенно дома они вообще не могут такие фишки делать, если только бородатый дядька не даст им чудо библиотеку. Может быть опять погорячился - может. Но скорее всего вы классный програмист, а на Exel у вас просто нет времени. Динамический диапазон Exel - меню Вставка - Имя -Присвоить - Формула: =Лист1!$A$4:ИНДЕКС(Лист1!$A$4:$A$65536;ПОИСКПОЗ("яяяяя";Лист!$A$3:$A$65536)) После написания формулы жмём ОК. И используем диапазон в своё удовольствие. Этот пример работает для столбца с текстом, можно написать для цифр или и для того и для того. Можно с кучей условий диапазоны делать, т.е. не все данные, а выборочно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2007, 09:11 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
Deggasad Может быть опять ... 1) Вы не запустили, по всей видимости (почему-то), мой пример и на этом основании делаете суждения , т.е. получаются суждения о том , чего Вы не попробовали. Deggasad Динамический диапазон Exel - меню Вставка - Имя -Присвоить - Формула: =Лист1!$A$4:ИНДЕКС(Лист1!$A$4:$A$65536;ПОИСКПОЗ("яяяяя";Лист!$A$3:$A$65536)) После написания формулы жмём ОК. И используем диапазон в своё удовольствие. 2) А вот здесь я не могу разобраться - Делаю все по Вашей инструкции - пытаюсь добавить имя в меню "Вставка - Имя -Присвоить" диапазону - не появляется имя диапазона в окошке Именованных диапазонов (Excel2K,2003 - без разницы). У Вас вообще диапазон именуется или нет ? Но как-бы то ни было, что проще - использовать Вашу формулу =Лист1!$A$4:ИНДЕКС(Лист1!$A$4:$A$65536;ПОИСКПОЗ("яяяяя";Лист!$A$3:$A$65536)) или мою =СУММ(Поле2) ? Почувствуйте разницу - У Вас задействован в обработке Весь А столбец, в формуле чтобы разобраться надо потрудиться - читать справку в несколько листов по функциям ПОИСКПОЗ, ИНДЕКС. САм диапазон жестко(здесь м.б.возражения, но ,просто,долго объяснять), в отличие от моего , привязан к указанным ячейкам. Короче - как я сказал выше - некрасиво все это. В моей формуле все ясно даже интуитивно - суммируются значения столбца Поле2, котрый является именованным диапазоном, который динамически изменяет свои размеры(для поддержки чего и устанавливается дополнение к Office - DLL'ка) задействованы в обработке только его ячейки, а не весь столбец A. И Причем тут SQL? про него я упомянул, когда говорил о возможностях библиотеки , это не значит , что он здесь необходим. Так в чем проблема ? Добавить аддон (DLL'ку) к офису ? Так надо понимать, что если хотите красиво и эффективно работать, то для этого нужно программное обеспечение ПО. (Так , если бы Вы захотели работать с Excel и при этом не устанавливать Excel, то Ваше желание было бы несколько странно) Знаете , на заре распространения PC, директора считали, что достаточно купить компьютры, а они уже сами будут решать их задачи, потом оказалось, - ан нет, нужно еще ПО покупать, да еще и разбираться - какое именно ПО. А впрочем, - почему "на заре", где-то до сих пор такое мнение живет, Только сейчас PC неразрывно связывается с установленным на нем Windows и Office, а , разумеется, все вне этого - уже считается за гранью человеческого понимания. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2007, 13:04 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
Deggasad KL (XL) Привет. В таком случае след. модифицированная формула должна быть несколько быстрее твоего варианта: =СУММ(B9:ИНДЕКС(B:B;МИН(ЕСЛИ($A9:$A1000="";СТРОКА($A9:$A1000)-1)))) (формула массива - подтверждается одновременным нажатием CTRL+SHIFT+ENTER) или еще так: =СУММ(B9:ИНДЕКС(B9:B10000;ПОИСКПОЗ(ИСТИНА;ЕПУСТО(A9:A10000);0)-1)) (формула массива - подтверждается одновременным нажатием CTRL+SHIFT+ENTER) или так: =СУММ(B9:ИНДЕКС(B9:B10000;ПОИСКПОЗ(ИСТИНА;A9:A10000="";0)-1)) (формула массива - подтверждается одновременным нажатием CTRL+SHIFT+ENTER) 2 KL (XL) Как считаешь удачная ли эта формула для нахождения первого больше нуля знаяения??? =СУММПРОИЗВ(ПОИСКПОЗ(ИСТИНА;J4:O4>0;0)) Пожалуй, другое мне на ум не приходит :-) KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2007, 14:20 |
|
||
|
Сумма диапазона
|
|||
|---|---|---|---|
|
#18+
yuniki2) А вот здесь я не могу разобраться - Делаю все по Вашей инструкции - пытаюсь добавить имя в меню "Вставка - Имя -Присвоить" диапазону - не появляется имя диапазона в окошке Именованных диапазонов (Excel2K,2003 - без разницы). У Вас вообще диапазон именуется или нет ? Ничего, ничего! Это случается когда человек начинает спор о том, что лучше VB или Excel, не имея представления о том, что из себя представляет последний :-) а) То что вы называете именованным диапазоном, на самом деле является частным случаем именованной формулы . =A1:A100 ={"a":"b":"c"} ={1;2;3} =$A$4:ИНДЕКС($A$4:$A$65536;ПОИСКПОЗ("яяяяя";$A$3:$A$65536)) и т.д. и т.п. и пр. б) Имя диапазона в окошке Именованных диапазонов появляется только в случае если именованная формула содержит исключительно ссылку на диапазон. Это вовсе не означает, что имя, не отображаемое в списке Имен, не существует или не может быть использовано. Кстати, для справки именованная формула предложенная Degassad видна из-под меню Вставка-Имя-Присвоить, но можно сделать совсем невидимое имя с помощью проперти Visible. То, что именованные формулы это нужный и мощный инструмент - неоспоримый факт. Сие относится и к VB и даже к VBA и тут совершенно нет необходимости обращать Папу Римского в католицизм. То что ты пишешь напоминает позицию человека, который однажды утром, проснувшись, понял, что единственное, что помогает от всех болезней - это Аспирин. Ура, товарищи!!! yunikiНо как-бы то ни было, что проще - использовать Вашу формулу =Лист1!$A$4:ИНДЕКС(Лист1!$A$4:$A$65536;ПОИСКПОЗ("яяяяя";Лист!$A$3:$A$65536)) или мою =СУММ(Поле2) ? Почувствуйте разницу Шельмуешь, айяяяй! =СУММ(Поле2) надо сравнивать с =СУММ(Поле2) , где Поле2 содержит именованную формулу, а вот =$A$4:ИНДЕКС($A$4:$A$65536;ПОИСКПОЗ("яяяяя";$A$3:$A$65536)) сравни с кодом в твоей DLL ;-) yuniki- У Вас задействован в обработке Весь А столбец, в формуле чтобы разобраться надо потрудиться - читать справку в несколько листов по функциям ПОИСКПОЗ, ИНДЕКС. САм диапазон жестко(здесь м.б.возражения, но ,просто,долго объяснять), в отличие от моего , привязан к указанным ячейкам. Короче - как я сказал выше - некрасиво все это. Это опять-таки от незнания: а) читать справку по функциям ПОИСКПОЗ, ИНДЕКС тоже, как видно, не всем помогает, но ведь, чтобы установить DLL или пуще того редактировать код в ней, что-нибудь, но прочесть придется ;-) б) жесткая привязка убирается как минимум с пом. относительных ссылок, но можно и параметры передавать: http://www.jkp-ads.com/Articles/ExcelNames09.htm yunikiВ моей формуле все ясно даже интуитивно - суммируются значения столбца Поле2, котрый является именованным диапазоном, который динамически изменяет свои размеры(для поддержки чего и устанавливается дополнение к Office - DLL'ка) задействованы в обработке только его ячейки, а не весь столбец A. Этот аргумент построен на ложной предпосылке - читай выше. KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2007, 15:03 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=34645159&tid=2178535]: |
0ms |
get settings: |
6ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
174ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 199ms |
| total: | 462ms |

| 0 / 0 |
