Как пройти через одну и ту же клетку - PullRequest
0 голосов
/ 29 октября 2018
Private Sub CommandButton1_Click()
    Range("C10").Select

    For Range("C10").Value = 0 To 35
        Range("C10").Value = Range("C10").Value + 1
    Next
End Sub

Я написал вышеприведенный код для ячейки для циклического перебора значений от 0 до 35. Я делаю это, потому что есть другие формулы, значения которых меняются в зависимости от значения Range ("C10").

Код не работает

Ответы [ 3 ]

0 голосов
/ 29 октября 2018

Добавьте инкрементную переменную в цикл For ... Next.

Option Explicit

Private Sub CommandButton1_Click()

    Dim i As Long

    For i = 0 To 35

        Range("C10").Value = i

        'do other stuff here

    Next

End Sub
0 голосов
/ 29 октября 2018

Это будет цикл от 0 до 35, изменяющий значение Range("A1") с i каждую секунду. Выглядит анимированно:

Public Sub LoopMe()

    Dim i As Long
    For i = 0 To 35
        Worksheets(1).Range("A1") = i
        Application.Wait(Now + TimeValue("00:00:01"))
    Next

End Sub
0 голосов
/ 29 октября 2018

Это не хороший способ сделать то, что вы хотите:

Вам лучше использовать переменную counter и сделать что-то вроде этого:

for counter = 0 to 35:
  Range("C10").Value = counter
  // check the values of the things you want to verify,
  // e.g. by putting them in some cells for verification afterwards,
  // like "Range("D10").Offset(0,counter) = ...
Next 

(Это просто псевдокод, могут быть некоторые синтаксические ошибки)

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