Перебирая числа между двумя числами - PullRequest
0 голосов
/ 23 апреля 2020

Я хочу сделать подсчет для каждого набора чисел между двумя числами в столбце A (поэтому посчитайте число 1, затем число 2 и т.д. c). По сути, я пытаюсь сделать (хотя я знаю, что это неправильно):

Dim rangeNo As integer
Dim countNo as integer
Dim top as integer
Dim lastRow as integer

top = 10

rangeNo = 1

lastRow = ActiveWorkbook.ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row

For each rangeNo between 1 and top
countNo = Application.WorksheetFunction.CountIf(Range(Cells(2, 1), Cells(lastRow, 1)), rangeNo)
msgbox (countNo)
rangeNo = rangeNo + 1
Next

В основном это l oop Мне нужна помощь. Я не знаю, как я могу l oop между двумя числами? Если я не делаю это совершенно неправильно?

1 Ответ

0 голосов
/ 23 апреля 2020

Вы пытаетесь использовать функциональность For...Next l oop в For Each...Next l oop. Хотя очень похоже, первое будет l oop через диапазон чисел, тогда как второе будет l oop через массив или коллекцию.

Попробуйте:

For rangeNo = 1 to top
    countNo = Application.WorksheetFunction.CountIf(Range(Cells(2, 1), Cells(lastRow, 1)), rangeNo)
    msgbox (countNo)
Next

Обратите внимание, что вам не нужно увеличивать rangeNo - Поскольку вы присваиваете его значение в l oop, вам не нужно это делать ранее в вашем коде тоже.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...