Я не совсем понимаю, где вы получите желаемое значение
повторяется, но вы можете построить функцию, как
Public Function Copy2()
Dim r1, r2, r3 As Range
Dim ct
Set r1 = Range("a1") 'set pointer
Set r2 = Range("b1") 'set pointer
Set r3 = Range("c1") 'set pointer
Do ' outer loop going through each number in column A until it comes up to a blank cell
ct = 0
Do ' Inner loop printing the # of times a number is requested from coresponding colum B data
ct = ct + 1
' prints column 3 info
r3.Value = r1.Value
Set r3 = r3.Offset(1, 0)
Loop Until ct = r2.Value
Set r2 = r2.Offset(1, 0)
Set r1 = r1.Offset(1, 0)
Loop Until r1.Value = ""
End Function
Затем вы можете вызвать его с кнопки, которой вы бы присвоили его код, например
Private Sub CommandButton2_Click()
Copy2
End Sub
это пойдет вниз по столбцу A и начнет заполнять новый столбец C количеством вхождений, найденных в соответствующем столбце B
пример результата