посчитать сумму чисел и знаков в одной ячейке с условием
Николай
Дата: Вторник, 07.05.2013, 12:17 |
Сообщение № 1
Добрый день! помогите составить формулу для подсчета следующих значений в нескольких ячейках пример: дано 4 ячейки с следующим содержанием: требуется посчитать количество вопросов и сумму цифр. что пробовал: =ДЛСТР [vba]Код
=СУММПРОИЗВ(ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;{"1";"?"};"")))
[/vba] и то и то работает криво. ДЛСТР считает количество символов, с вопросами все ОК, а цифры добавляют путаницу, он не разделяет 1 от 9.. все пишет как +1 СУММПРОИЗВ тоже не сработало, он ищет по указанным значениям, но опять же если числа больше 1 он их не сумирует
Добрый день! помогите составить формулу для подсчета следующих значений в нескольких ячейках пример: дано 4 ячейки с следующим содержанием: требуется посчитать количество вопросов и сумму цифр. что пробовал: =ДЛСТР [vba]Код
=СУММПРОИЗВ(ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;{"1";"?"};"")))
[/vba] и то и то работает криво. ДЛСТР считает количество символов, с вопросами все ОК, а цифры добавляют путаницу, он не разделяет 1 от 9.. все пишет как +1 СУММПРОИЗВ тоже не сработало, он ищет по указанным значениям, но опять же если числа больше 1 он их не сумирует Николай
Ответить
Сообщение Добрый день! помогите составить формулу для подсчета следующих значений в нескольких ячейках пример: дано 4 ячейки с следующим содержанием: требуется посчитать количество вопросов и сумму цифр. что пробовал: =ДЛСТР [vba]Код
=СУММПРОИЗВ(ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;{"1";"?"};"")))
[/vba] и то и то работает криво. ДЛСТР считает количество символов, с вопросами все ОК, а цифры добавляют путаницу, он не разделяет 1 от 9.. все пишет как +1 СУММПРОИЗВ тоже не сработало, он ищет по указанным значениям, но опять же если числа больше 1 он их не сумирует Автор - Николай Дата добавления - 07.05.2013 в 12:17
DV
Дата: Вторник, 07.05.2013, 12:23 |
Сообщение № 2
Группа: Друзья
Ранг: Обитатель
Сообщений: 286
Репутация:
194
±
Замечаний:
0% ±
Excel 2010 RUS
Так: Код
=ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;"?";))+ПОДСТАВИТЬ(M13;"?";)
несколько: Код
=СУММПРОИЗВ(ДЛСТР(M11:M13)-ДЛСТР(ПОДСТАВИТЬ(M11:M13;"?";))+ПОДСТАВИТЬ(M11:M13;"?";))
если нет, давайте пример
Так: Код
=ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;"?";))+ПОДСТАВИТЬ(M13;"?";)
несколько: Код
=СУММПРОИЗВ(ДЛСТР(M11:M13)-ДЛСТР(ПОДСТАВИТЬ(M11:M13;"?";))+ПОДСТАВИТЬ(M11:M13;"?";))
если нет, давайте пример DV
Сообщение отредактировал DV - Вторник, 07.05.2013, 12:26
Ответить
Сообщение Так: Код
=ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;"?";))+ПОДСТАВИТЬ(M13;"?";)
несколько: Код
=СУММПРОИЗВ(ДЛСТР(M11:M13)-ДЛСТР(ПОДСТАВИТЬ(M11:M13;"?";))+ПОДСТАВИТЬ(M11:M13;"?";))
если нет, давайте пример Автор - DV Дата добавления - 07.05.2013 в 12:23
Serge_007
Дата: Вторник, 07.05.2013, 12:35 |
Сообщение № 3
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация:
2749
±
Замечаний:
±
Excel 2016
Если могут быть варианты типа 4???7??? , то можно так (формула массива): Код
=СУММ(ЕСЛИ(ЕЧИСЛО(-ПСТР(M13;СТРОКА($1:$9);1));--ПСТР(M13;СТРОКА($1:$9);1));ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;"?";)))
Если могут быть варианты типа 4???7??? , то можно так (формула массива): Код
=СУММ(ЕСЛИ(ЕЧИСЛО(-ПСТР(M13;СТРОКА($1:$9);1));--ПСТР(M13;СТРОКА($1:$9);1));ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;"?";)))
Serge_007
ЮMoney :41001419691823 | WMR :126292472390
Ответить
Сообщение Если могут быть варианты типа 4???7??? , то можно так (формула массива): Код
=СУММ(ЕСЛИ(ЕЧИСЛО(-ПСТР(M13;СТРОКА($1:$9);1));--ПСТР(M13;СТРОКА($1:$9);1));ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;"?";)))
Автор - Serge_007 Дата добавления - 07.05.2013 в 12:35
Николай
Дата: Вторник, 07.05.2013, 13:22 |
Сообщение № 4
Цитата (Serge_007 )
Код
=СУММ(ЕСЛИ(ЕЧИСЛО(-ПСТР(M13;СТРОКА($1:$9);1));--ПСТР(M13;СТРОКА($1:$9);1));ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;"?";)))
нет, вперемешку не будут, число максимум двухзначное обозначающее фактическое количество, и количество вопросов, обозначающих резерв по позиции в списке попробовал Ваш массив, в приведенном примере (во вложенном файле) 7 1? ??? 4??????3 сумма чисел=15 сумма вопросов 10, не посчиталось, может я что то не правильно применил? PS в массиве есть фрагмент - "ПОДСТАВИТЬ" что это и как работает я не понял, может из за этого не работает? Цитата (DV )
Код
=ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;"?";))+ПОДСТАВИТЬ(M13;"?";)
заработало! показало четко сумму чисел + количество знаков. Только я не понял, а как то можно выделить отдельно сумму чисел и отдельно количество знаков?
Цитата (Serge_007 )
Код
=СУММ(ЕСЛИ(ЕЧИСЛО(-ПСТР(M13;СТРОКА($1:$9);1));--ПСТР(M13;СТРОКА($1:$9);1));ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;"?";)))
нет, вперемешку не будут, число максимум двухзначное обозначающее фактическое количество, и количество вопросов, обозначающих резерв по позиции в списке попробовал Ваш массив, в приведенном примере (во вложенном файле) 7 1? ??? 4??????3 сумма чисел=15 сумма вопросов 10, не посчиталось, может я что то не правильно применил? PS в массиве есть фрагмент - "ПОДСТАВИТЬ" что это и как работает я не понял, может из за этого не работает? Цитата (DV )
Код
=ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;"?";))+ПОДСТАВИТЬ(M13;"?";)
заработало! показало четко сумму чисел + количество знаков. Только я не понял, а как то можно выделить отдельно сумму чисел и отдельно количество знаков?Николай
Ответить
Сообщение Цитата (Serge_007 )
Код
=СУММ(ЕСЛИ(ЕЧИСЛО(-ПСТР(M13;СТРОКА($1:$9);1));--ПСТР(M13;СТРОКА($1:$9);1));ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;"?";)))
нет, вперемешку не будут, число максимум двухзначное обозначающее фактическое количество, и количество вопросов, обозначающих резерв по позиции в списке попробовал Ваш массив, в приведенном примере (во вложенном файле) 7 1? ??? 4??????3 сумма чисел=15 сумма вопросов 10, не посчиталось, может я что то не правильно применил? PS в массиве есть фрагмент - "ПОДСТАВИТЬ" что это и как работает я не понял, может из за этого не работает? Цитата (DV )
Код
=ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;"?";))+ПОДСТАВИТЬ(M13;"?";)
заработало! показало четко сумму чисел + количество знаков. Только я не понял, а как то можно выделить отдельно сумму чисел и отдельно количество знаков?Автор - Николай Дата добавления - 07.05.2013 в 13:22
Serge_007
Дата: Вторник, 07.05.2013, 13:34 |
Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация:
2749
±
Замечаний:
±
Excel 2016
Цитата (Николай )
может я что то не правильно применил?
Как применяли? Давайте файл с ошибкой Цитата (Николай )
число максимум двухзначное
Цитата (Николай )
заработало
При наличии двузначных чисел будет неверный результат
Цитата (Николай )
может я что то не правильно применил?
Как применяли? Давайте файл с ошибкой Цитата (Николай )
число максимум двухзначное
Цитата (Николай )
заработало
При наличии двузначных чисел будет неверный результатSerge_007
ЮMoney :41001419691823 | WMR :126292472390
Ответить
Сообщение Цитата (Николай )
может я что то не правильно применил?
Как применяли? Давайте файл с ошибкой Цитата (Николай )
число максимум двухзначное
Цитата (Николай )
заработало
При наличии двузначных чисел будет неверный результатАвтор - Serge_007 Дата добавления - 07.05.2013 в 13:34
Николай
Дата: Вторник, 07.05.2013, 13:53 |
Сообщение № 6
в итоге сделал что то такоеКод
=СУММ(ЕСЛИ(ЕЧИСЛО(-ПСТР(M7:Q7;СТРОКА($1:$99);1));--ПСТР(M7:Q7;СТРОКА($1:$99);1)))-((СУММПРОИЗВ(ДЛСТР(M7:Q7)-ДЛСТР(ПОДСТАВИТЬ(M7:Q7;{"?"};"")))))
считает и числа и знаки:))
в итоге сделал что то такоеКод
=СУММ(ЕСЛИ(ЕЧИСЛО(-ПСТР(M7:Q7;СТРОКА($1:$99);1));--ПСТР(M7:Q7;СТРОКА($1:$99);1)))-((СУММПРОИЗВ(ДЛСТР(M7:Q7)-ДЛСТР(ПОДСТАВИТЬ(M7:Q7;{"?"};"")))))
считает и числа и знаки:)) Николай
Ответить
Сообщение в итоге сделал что то такоеКод
=СУММ(ЕСЛИ(ЕЧИСЛО(-ПСТР(M7:Q7;СТРОКА($1:$99);1));--ПСТР(M7:Q7;СТРОКА($1:$99);1)))-((СУММПРОИЗВ(ДЛСТР(M7:Q7)-ДЛСТР(ПОДСТАВИТЬ(M7:Q7;{"?"};"")))))
считает и числа и знаки:)) Автор - Николай Дата добавления - 07.05.2013 в 13:53
Serge_007
Дата: Вторник, 07.05.2013, 13:59 |
Сообщение № 7
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация:
2749
±
Замечаний:
±
Excel 2016
Эта формула всегда будет возвращать неправильный результат, за исключением случая, когда в исходном диапазоне есть только цифры
Эта формула всегда будет возвращать неправильный результат, за исключением случая, когда в исходном диапазоне есть только цифры Serge_007
ЮMoney :41001419691823 | WMR :126292472390
Ответить
Сообщение Эта формула всегда будет возвращать неправильный результат, за исключением случая, когда в исходном диапазоне есть только цифры Автор - Serge_007 Дата добавления - 07.05.2013 в 13:59
Николай
Дата: Вторник, 07.05.2013, 14:06 |
Сообщение № 8
а как то исправить можно?
Ответить
Сообщение а как то исправить можно? Автор - Николай Дата добавления - 07.05.2013 в 14:06
DV
Дата: Вторник, 07.05.2013, 14:10 |
Сообщение № 9
Группа: Друзья
Ранг: Обитатель
Сообщений: 286
Репутация:
194
±
Замечаний:
0% ±
Excel 2010 RUS
Цитата (Николай )
а как то можно выделить отдельно сумму чисел и отдельно количество знаков?
Можно: знаки: Код
=ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;"?";))
числа: Код
=--ПОДСТАВИТЬ(M13;"?";)
Для массива формулы вставляем в СУММПРОИЗВ
Цитата (Николай )
а как то можно выделить отдельно сумму чисел и отдельно количество знаков?
Можно: знаки: Код
=ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;"?";))
числа: Код
=--ПОДСТАВИТЬ(M13;"?";)
Для массива формулы вставляем в СУММПРОИЗВDV
Ответить
Сообщение Цитата (Николай )
а как то можно выделить отдельно сумму чисел и отдельно количество знаков?
Можно: знаки: Код
=ДЛСТР(M13)-ДЛСТР(ПОДСТАВИТЬ(M13;"?";))
числа: Код
=--ПОДСТАВИТЬ(M13;"?";)
Для массива формулы вставляем в СУММПРОИЗВАвтор - DV Дата добавления - 07.05.2013 в 14:10
Николай
Дата: Вторник, 07.05.2013, 15:44 |
Сообщение № 10
Цитата (DV )
Для массива формулы вставляем в СУММПРОИЗВ
Заметил еще 1 нюанс, формула слетает если в интервале попадается пустая ячейка. С этим можно что то сделать или единственное решение нули ставить?
Цитата (DV )
Для массива формулы вставляем в СУММПРОИЗВ
Заметил еще 1 нюанс, формула слетает если в интервале попадается пустая ячейка. С этим можно что то сделать или единственное решение нули ставить?Николай
Ответить
Сообщение Цитата (DV )
Для массива формулы вставляем в СУММПРОИЗВ
Заметил еще 1 нюанс, формула слетает если в интервале попадается пустая ячейка. С этим можно что то сделать или единственное решение нули ставить?Автор - Николай Дата добавления - 07.05.2013 в 15:44
Serge_007
Дата: Вторник, 07.05.2013, 15:47 |
Сообщение № 11
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация:
2749
±
Замечаний:
±
Excel 2016
Цитата (Николай )
С этим можно что то сделать
В СУММПРОИЗВ(): ЕСЛИ(диапазон<>"";формула)
Цитата (Николай )
С этим можно что то сделать
В СУММПРОИЗВ(): ЕСЛИ(диапазон<>"";формула) Serge_007
ЮMoney :41001419691823 | WMR :126292472390
Ответить
Сообщение Цитата (Николай )
С этим можно что то сделать
В СУММПРОИЗВ(): ЕСЛИ(диапазон<>"";формула) Автор - Serge_007 Дата добавления - 07.05.2013 в 15:47
Гость
Дата: Вторник, 07.05.2013, 16:10 |
Сообщение № 12
Цитата (DV )
Для массива формулы вставляем в СУММПРОИЗВ
И еще нюанс - если в формуле по числам стоят только "?" в ячейке, тоже ошибку выдает((
Цитата (DV )
Для массива формулы вставляем в СУММПРОИЗВ
И еще нюанс - если в формуле по числам стоят только "?" в ячейке, тоже ошибку выдает((Гость
Ответить
Сообщение Цитата (DV )
Для массива формулы вставляем в СУММПРОИЗВ
И еще нюанс - если в формуле по числам стоят только "?" в ячейке, тоже ошибку выдает((Автор - Гость Дата добавления - 07.05.2013 в 16:10
Serge_007
Дата: Вторник, 07.05.2013, 16:17 |
Сообщение № 13
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация:
2749
±
Замечаний:
±
Excel 2016
Используйте мою формулу, в ней всё учтено сразу
Используйте мою формулу, в ней всё учтено сразу Serge_007
ЮMoney :41001419691823 | WMR :126292472390
Ответить
Сообщение Используйте мою формулу, в ней всё учтено сразу Автор - Serge_007 Дата добавления - 07.05.2013 в 16:17
Николай
Дата: Среда, 08.05.2013, 10:26 |
Сообщение № 14
[quote=Serge_007]Используйте мою формулу, в ней всё учтено сразу[/quote] пробовал формулу, но с ней тоже не все так просто. применил ее к столбцу из 7 ячеек в котором и пустые клетки и двузначные значения -пример 1? (пустая ячейка) ??? (пустая ячейка) 20 (пустая ячейка) 5 =СУММ(ЕСЛИ(ЕЧИСЛО(-ПСТР(M7:M13;СТРОКА($1:$99);1));--ПСТР(M7:M13;СТРОКА($1:$99);1));ДЛСТР(M7:M13)-ДЛСТР(ПОДСТАВИТЬ(M7:M13;"?";))) формула посчитала =5 а должно 2+0+3+0+20+0+5=30 формулу применял как массив ктр+шфт+энтр, все ячейки общего формата без пробелов
[quote=Serge_007]Используйте мою формулу, в ней всё учтено сразу[/quote] пробовал формулу, но с ней тоже не все так просто. применил ее к столбцу из 7 ячеек в котором и пустые клетки и двузначные значения -пример 1? (пустая ячейка) ??? (пустая ячейка) 20 (пустая ячейка) 5 =СУММ(ЕСЛИ(ЕЧИСЛО(-ПСТР(M7:M13;СТРОКА($1:$99);1));--ПСТР(M7:M13;СТРОКА($1:$99);1));ДЛСТР(M7:M13)-ДЛСТР(ПОДСТАВИТЬ(M7:M13;"?";))) формула посчитала =5 а должно 2+0+3+0+20+0+5=30 формулу применял как массив ктр+шфт+энтр, все ячейки общего формата без пробелов Николай
Ответить
Сообщение [quote=Serge_007]Используйте мою формулу, в ней всё учтено сразу[/quote] пробовал формулу, но с ней тоже не все так просто. применил ее к столбцу из 7 ячеек в котором и пустые клетки и двузначные значения -пример 1? (пустая ячейка) ??? (пустая ячейка) 20 (пустая ячейка) 5 =СУММ(ЕСЛИ(ЕЧИСЛО(-ПСТР(M7:M13;СТРОКА($1:$99);1));--ПСТР(M7:M13;СТРОКА($1:$99);1));ДЛСТР(M7:M13)-ДЛСТР(ПОДСТАВИТЬ(M7:M13;"?";))) формула посчитала =5 а должно 2+0+3+0+20+0+5=30 формулу применял как массив ктр+шфт+энтр, все ячейки общего формата без пробелов Автор - Николай Дата добавления - 08.05.2013 в 10:26
DV
Дата: Среда, 08.05.2013, 10:35 |
Сообщение № 15
Группа: Друзья
Ранг: Обитатель
Сообщений: 286
Репутация:
194
±
Замечаний:
0% ±
Excel 2010 RUS
Код
=СУММПРОИЗВ(ДЛСТР(A1:A8)-ДЛСТР(ПОДСТАВИТЬ(A1:A8;"?";))+ПОДСТАВИТЬ(0&A1:A8;"?";))
Код
=СУММПРОИЗВ(ДЛСТР(A1:A8)-ДЛСТР(ПОДСТАВИТЬ(A1:A8;"?";))+ПОДСТАВИТЬ(0&A1:A8;"?";))
DV
Ответить
Сообщение Код
=СУММПРОИЗВ(ДЛСТР(A1:A8)-ДЛСТР(ПОДСТАВИТЬ(A1:A8;"?";))+ПОДСТАВИТЬ(0&A1:A8;"?";))
Автор - DV Дата добавления - 08.05.2013 в 10:35
Николай
Дата: Среда, 08.05.2013, 11:40 |
Сообщение № 16
[quote=DV]DV[/quote] Огромное пасибо! вопрос решен итог: =СУММПРОИЗВ(ДЛСТР(M4:M31)-ДЛСТР(ПОДСТАВИТЬ(M4:M31;"?";))+ПОДСТАВИТЬ(0&M4:M31;"?";)) для расчета и знаков и цифр знаки отдельно среди цифр: =СУММПРОИЗВ(ДЛСТР(M16:M17)-ДЛСТР(ПОДСТАВИТЬ(M16:M17;"?";))) Числа отдельно среди знаков: =СУММПРОИЗВ(--ПОДСТАВИТЬ(0&M16:M17;"?";))
[quote=DV]DV[/quote] Огромное пасибо! вопрос решен итог: =СУММПРОИЗВ(ДЛСТР(M4:M31)-ДЛСТР(ПОДСТАВИТЬ(M4:M31;"?";))+ПОДСТАВИТЬ(0&M4:M31;"?";)) для расчета и знаков и цифр знаки отдельно среди цифр: =СУММПРОИЗВ(ДЛСТР(M16:M17)-ДЛСТР(ПОДСТАВИТЬ(M16:M17;"?";))) Числа отдельно среди знаков: =СУММПРОИЗВ(--ПОДСТАВИТЬ(0&M16:M17;"?";)) Николай
Ответить
Сообщение [quote=DV]DV[/quote] Огромное пасибо! вопрос решен итог: =СУММПРОИЗВ(ДЛСТР(M4:M31)-ДЛСТР(ПОДСТАВИТЬ(M4:M31;"?";))+ПОДСТАВИТЬ(0&M4:M31;"?";)) для расчета и знаков и цифр знаки отдельно среди цифр: =СУММПРОИЗВ(ДЛСТР(M16:M17)-ДЛСТР(ПОДСТАВИТЬ(M16:M17;"?";))) Числа отдельно среди знаков: =СУММПРОИЗВ(--ПОДСТАВИТЬ(0&M16:M17;"?";)) Автор - Николай Дата добавления - 08.05.2013 в 11:40