Итак, я пытаюсь использовать VBA в Excel для автоматического создания рабочего листа на основе некоторых входов.VBA Назначить значение переменной ячейкам
Моя проблема в том, что когда я пытаюсь назначить переменную ячейке с VBA, ничего не происходит.
Этот тест код работал:
Worksheets(sheetName).Cells(1, 1).Value = 1
Этот код (код, который я забочусь о) не будет:
Const ROW_START As Integer = 3
For row = ROW_START To (ROW_START + 10000) Step 1
Worksheets(sheetName).Cells(row, RAM_COL).Value = Rnd()
Next
Это также работает, хотя она используется только Rnd() один раз (что Я должен был ожидать):
Worksheets(sheetName).Range("A1:A10000") = Rnd()
У меня есть множество таких петель, ни одна из которых не работает. Я также пытаюсь назначить строки значениям ячеек через некоторое время, что также не работает.
Рабочий лист, на который ссылается sheetName, создается без каких-либо проблем.
Спасибо за любую помощь вы можете предоставить
Какая строка вашего кода вызывает ошибку? –
Я проверил цикл и добавлял в ячейки штраф для меня, я бы предположил, что проблема с 'sheetName' или' RAM_COL' не определяется. Как упоминалось в alex, рекомендуется пропустить код (используя F8), чтобы сузить место, где возникла проблема. –
Моя проблема была опечаткой в одном из имен переменных (все вышеперечисленные переменные были инициализированы, только один wasn ' t правильное имя). Я также прошел через код, и он никогда не прерывался, он просто ничего не делал. Также не было указаний на excel VB IDE, что var не был объявлен. (RAM_COL должен был быть RAND_COL btw). – jgrad