Техника

VBA! помогите написать прогу для Userform. Задача: Сколько раз данная цифра а встречается в целом четырехзначном числе?

цикл должен быть не от 0 до 9999 а от 1000
а если с ручным вводом числа то от вводимого до 9999 :)
может можно упростить программу и генерировать заведомо нужные числа?
a = Int(Rnd * 9999) + 1000
пример первый
Sub test()
Dim a&, b&, i&, cMax&, op&
Randomize
a = Int(Rnd * 9999) + 1000
For i = 1 To 4
b = Val(Mid(a, i, 1))
If b > cMax Then cMax = b
Next i
op = Len(a) - Len(Replace(a, cMax, ""))
MsgBox "в числе " & a & " цифра " & cMax & " встречается " & op & " раз" & IIf(op > 1, "а", "")
End Sub
второй
Sub test()
Dim a&, b&, i&, op&
a = InputBox("введите число", , 9999)
b = InputBox("введите второе число", , 9)
op = Len(a) - Len(Replace(a, b, ""))
MsgBox "в числе " & a & " цифра " & b & " встречается " & op & " раз" & IIf(op > 1, "а", "")
End Sub
N7
Nurjan 7 Kontinent
4 057
Лучший ответ
Nurjan 7 Kontinent во втором примере переменную i&, убрать :)
С этим не знаком но примерно понятие постараюсь обьяснить.
У нас 4444 разрядное число например число 2
N=0
Ввод числа 2
Цикл от 0 до 9999
Разложение число на ед, дес, сот, тыс.
Сравнить появление единицах числа 2 N=N+1
Сравнить появление десятках числа 2 N=N+1
Сравнить появление сотнях числа 2 N=N+1
Сравнить появление тысячах числа 2 N=N+1
конец цикла
печать N
End
За всю жизнь был знаком только с одной женщиной-программистом, которая была привлекательна.
Юля Юля
Юля Юля
6 616
Владимир Забудский я не программист вовсе) я логист, но такая вот информатика)