Страницы: 1
RSS
Как подсчитать общее количество каждой цифры, встречающейся в ряду чисел
 
Задача такая: подсчитать количество каждой цифры, встречающейся в ряду чисел от Х до У. (например, от 1 до 1000).  
{Т.е. от 1 до 20: "0"-2, "1"-12, "2"-3, "3"-2, "4"-2 и т.д. все цифры}.
 
универ? школа?  
это ваша задача.  
причем - неинтересная задача.  
почему вы принесли её на форум?
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
для меня интересная.    
задача из жизни.  
Необходимо подсчитать: количество цифр на заказ для номерков квартир всего дома.  
Может есть уже готовая формула например, чтобы вручную из месяца в месяц не париться.
 
гм... формулами не знаю.  
 
Sub t2()  
 Dim n1%, n2%, i%, j%, k%, a%(0 To 9)  
 n1 = 1: n2 = 20  
 For i = n1 To n2  
   k = i  
   Do While k  
     j = k Mod 10  
     k = k \ 10  
     a(j) = a(j) + 1  
   Loop  
 Next  
 [a2:j2].Value = a
End Sub
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
=СУММ(ДЛСТР(СТРОКА($1:$1000))-ДЛСТР(ПОДСТАВИТЬ(СТРОКА($1:$1000);СТРОКА(1:1);)))  
 
СТРОКА(1:1) - нужная цифра или число. При протягивании формулы по строкам изменяется.  
 
Как вводить формулу массива:  
После введения формулы в ячейку, ввод завершается нажатием не просто Enter, а Ctrl+Shift+Enter. Формула при этом будет заключена в фигурные скобки - {}.
 
Та же формула, с выбором диапазона в ячейках В1, C1:  
=СУММ(ДЛСТР(СТРОКА(ИНДЕКС($A$1:$A$1000;$B$1):ИНДЕКС($A$1:$A$1000;$C$1)))-ДЛСТР(ПОДСТАВИТЬ(СТРОКА(ИНДЕКС($A$1:$A$1000;$B$1):ИНДЕКС($A$1:$A$1000;$C$1));СТРОКА(1:1);)))
 
спасибо, попробую проверить, а с нулем работает?
 
Для включения нуля: СТРОКА(1:1)-1
 
Спасибо, все реально работает!
 
Файл, вдруг кто-когда с той же проблемкой будет.
 
Вот ещё!  
Навеяно идеями Виктора! (с)
 
Примечание: ДВССЫЛ() летуча.
 
Предполагаю, что Вы о копировании.  
Но пока не понимаю, что имеете в виду.  
Границы областей или ячейка могут измениться?  
Мне это важно.  
Ответьте, пжл.  
Спасибо!
 
Создайте два файла. В одном пример с моей формулой, в другом - с Вашей.  
Поочередно откройте и сразу, ничего не изменяя, закройте файлы.  
Разница есть?
 
iba2004, почитайте вот эту тему:   
http://www.planetaexcel.ru/forum.php/plex.php?thread_id=19016  
возможно, решите часть своих вопросов.  
мне в своё время оч. помогло :)
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
Пока ничего не вижу :о((  
М.б. что-то не так делаю?  
ДВССЫЛ может начать ссылаться на другой файл?
 
Как ничего? А вопрос о сохранении файла?  
 
Коротко: функции, пересчитываемые при любом изменении на листе, называются "летучие". Подробнее - по ссылке, показанной ранее.
 
2 vikttur  
Да вопрос был! Но я ему не предал згачения.  
Теперь понял о чём Вы. Спасибо!
 
2 ikki  
Спасибо!  
Извините, пропустил Ваш пост.  
Пошёл знакомиться. :о))
 
2 ikki  
2 vikttur  
Парни, спасибо!  
Очень познавательно, даже и не подозревал о таких возможностях.  
Ещё раз благодарю Вас.
Страницы: 1
Читают тему
Наверх