Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.03.2011, 11:24   #21
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

это я перед выходом на работу, заглянул на форум и... "взял" диапазон в кавычки (два раза)))... извините
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 18.03.2011, 10:04   #22
Miguel Sanchez
Пользователь
 
Регистрация: 09.03.2011
Сообщений: 33
По умолчанию

подскажите, а для чего условие на проверку номера строки от 84й? и почему считаем сумму произведений?
Miguel Sanchez вне форума Ответить с цитированием
Старый 18.03.2011, 11:34   #23
vikttur
Участник клуба
 
Регистрация: 16.05.2010
Сообщений: 1,249
По умолчанию

Вариант. Короткая, но летучая формула массива:
Код:
{=СУММ(Ч(СМЕЩ(A1;(СТРОКА(1:100)-1)*2;)))}
vikttur вне форума Ответить с цитированием
Старый 18.03.2011, 12:38   #24
Miguel Sanchez
Пользователь
 
Регистрация: 09.03.2011
Сообщений: 33
По умолчанию

vikttur
работает! круто! - никаких "если" и нагромождений... тока не совсем улавливаю механизм работы...
Miguel Sanchez вне форума Ответить с цитированием
Старый 18.03.2011, 14:04   #25
vikttur
Участник клуба
 
Регистрация: 16.05.2010
Сообщений: 1,249
По умолчанию

"Никаких "если" и нагромождений..." не всегда хорошо. Часто ЕСЛИ помогает обрезать лишние вычисления, что при применении формул массива (особенно когда их много) имеет немалое значение. Т.е. не всегда самая короткая формула является наилучшей.

Показанная формула со СМЕЩ() летуча: пересчитывается при любом изменении на листе. Если таких формул несколько, то торможение практически незаметно, но при наличии на листе большого количества летучих функций ждите сюрпризов.
(СТРОКА(1:100)-1)*2 -последовательный перебор чисел 1:100 создает массив {0;2;4;...;198}
СМЕЩ(A1;{0;2;4;...;198}; ) - извлечение значения ячейки, смещенной относительно A1 на число из массива: A1, A3, A5,...;A199
Дальше понятно - суммирование всех значений, извлеченных функцией.
vikttur вне форума Ответить с цитированием
Старый 24.03.2011, 14:40   #26
Miguel Sanchez
Пользователь
 
Регистрация: 09.03.2011
Сообщений: 33
По умолчанию

мне для использования комбинаций формул хочется понять как ексель работает с массивом - т.е., к примеру ={W5=B5:B9} - ексел воспринимает формулу массива, как старт цикла?
for each r in targetrange
if range("W5")= r.value then i=i+1
end if
next
res=IIF(i>0;"истина";"ложь")

просто мне такие конструкции понятнее...
Miguel Sanchez вне форума Ответить с цитированием
Старый 24.03.2011, 14:49   #27
Miguel Sanchez
Пользователь
 
Регистрация: 09.03.2011
Сообщений: 33
По умолчанию

а можно ли зависимые списки построенные через проверку данных(в VBA validation/ xlValidateList) сделать еще и динамическими? там применяется двссыл(), а она не работает с динамическими диапазонами, вроде как...
Miguel Sanchez вне форума Ответить с цитированием
Старый 04.04.2011, 21:11   #28
vikttur
Участник клуба
 
Регистрация: 16.05.2010
Сообщений: 1,249
По умолчанию

Можно. Не применяйте ДВССЫЛ().
Ваш пример?
vikttur вне форума Ответить с цитированием
Старый 20.08.2012, 21:56   #29
Ksu2977
Новичок
Джуниор
 
Регистрация: 20.08.2012
Сообщений: 1
По умолчанию

Прошу помощи. В Экселе далеко не специалист. У меня есть заполненная таблица в столбцах присутствуют знаки "плюс" или "минус" Вот необходимо подсчитать количество "плюсов" в столбце.
Я использовала формулу к примеру: =СЧЕТЕСЛИ(В7:В1000;"+")
Но она не работает. Может чего посоветуете?
Ksu2977 вне форума Ответить с цитированием
Старый 20.08.2012, 22:56   #30
ZORRO2005
Форумчанин
 
Аватар для ZORRO2005
 
Регистрация: 26.11.2006
Сообщений: 584
По умолчанию

Цитата:
Сообщение от Ksu2977 Посмотреть сообщение
Прошу помощи. В Экселе далеко не специалист. У меня есть заполненная таблица в столбцах присутствуют знаки "плюс" или "минус" Вот необходимо подсчитать количество "плюсов" в столбце.
Я использовала формулу к примеру: =СЧЕТЕСЛИ(В7:В1000;"+")
Но она не работает. Может чего посоветуете?
Посоветую использовать мою волшебную:
Цитата:
=СЧЁТЕСЛИ(B7:B1000;"+")
Скопируйте и вставьте. Фишка в красном цвете.

Последний раз редактировалось ZORRO2005; 20.08.2012 в 23:33.
ZORRO2005 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
копирование заполненных ячеек maratmm Microsoft Office Excel 0 12.11.2010 16:49
Как посчитать количество знаков PARTOS Microsoft Office Excel 11 05.06.2010 22:46
Как посчитать количество записей в таблице DBGrid Епгений БД в Delphi 12 09.05.2010 16:26
количество заполненных строк в МЕМО designer999 Общие вопросы Delphi 5 15.04.2010 13:18
подсчет заполненных ячеек extremobile Microsoft Office Excel 2 28.05.2009 17:26