Не могу понять, как использовать для … следующих циклов в Excel VBA

Я знаю, что этот код можно легко переписать, чтобы использовать цикл, но я не могу.

k1 = (exk - 3 * increment) k2 = k1 + 0.01 k3 = k2 + 0.01 k4 = k3 + 0.01 k5 = k4 + 0.01 k6 = k5 + 0.01 k7 = k6 + 0.01 Cells(7, 2).Value = k1 Cells(8, 2).Value = k2 Cells(9, 2).Value = k3 Cells(10, 2).Value = k4 Cells(11, 2).Value = k5 Cells(12, 2).Value = k6 Cells(13, 2).Value = k7 

Вот ты где:

 Sub Rewrite_Code() Dim k() As Double Dim i As Integer Const x = 7 ReDim k(x) k1 = (exk - 3 * increment) 'Redim Preserve k(i+1) '(this can using when program situation interactively changes) For i = 1 To x k(i + 1) = k(i) + 0.01 ActiveSheet.Cells(i + 6, 2).Value = k(i) Next i End Sub 'Rewrite 

Возможно, это то, что вы имеете в виду?

 Const FirstRow As Long = 7 Dim K1 As Double Dim i As Long K1 = 13 ' your formula is (exc - 3) * increment For i = 1 To 7 Cells(i + FirstRow - 1, 2).Value = K1 K1 = K1 + 0.01 Next i 
 Option Explicit Public Sub ForNext() Dim ws As Worksheet, r As Long, arr As Variant, exk As Long, increment As Long Set ws = ThisWorkbook.Worksheets("Sheet1") 'set the name of your Worksheet exk = 5 increment = 1 arr = ws.Range(ws.Cells(7, 2), ws.Cells(13, 2)) 'copy range to array arr(1, 1) = (exk - 3) * increment 'set first array item For r = 2 To 7 arr(r, 1) = arr(r - 1, 1) + 0.01 'set the rest of the items Next ws.Range(ws.Cells(7, 2), ws.Cells(13, 2)) = arr 'copy array back to range End Sub 

  • скопируйте диапазон в массив (B7: B13); первый элемент в массиве (B7) начинается с индекса 1 – arr(1, 1)
  • установите первый элемент в массиве в формулу: arr(1, 1) = (exk - 3) * increment
  • итерации по остальной части массива, увеличивайте каждый элемент на основе предыдущего значения
  • поместите массив обратно на диапазон

один пример массива измерений

 Sub test() Dim exk, increment Dim vResult() Dim i As Integer exk = 5 'setting your value increment = 2 'setting your value ReDim vResult(1 To 7) 'array one dimension vResult(1) = exk - 3 * increment For i = 2 To 7 vResult(i) = vResult(i - 1) + 0.01 Next i Range("b7").Resize(7) = WorksheetFunction.Transpose(vResult) End Sub 
  • Как исправить ошибку «ошибка компиляции: следующая без» в VBA?
  • Считайте записи в цикле for, а затем используйте целое число для форматирования таблицы Excel vb.net
  • отображать элементы списка в листе excel
  • До тех пор пока значение выбора не равно значению для каждого значения
  • Цикл из Excel данных в словарь с несколькими значениями на ключ
  • Excel VBA FOR цикл, устанавливающий значения в случайных ячейках
  • Внутри цикла, как указывать «все строки» при использовании среднего числа столбцов (Visual Basic)
  • excel vba loop range range и если утверждения
  • Макрос, который будет проходить через диапазон, чтобы заполнить значения координат соседних ячеек
  • Построение строки с параметром For Next Loop для имени управления UserForm
  • Сохранение различных значений VBA excel - удаление всего остального
  • Interesting Posts

    как я могу рассчитать скидку, если функция в excel

    Как удалить скрытую колонку / строку из листа Excel?

    VBS, при открытии файла Excel, изменяет формат номера, уничтожает данные

    Чтение с помощью xlrd в python

    VBA: копирование несмежных данных с одного листа на другой

    Запрос таблицы в Excel с параметрами с помощью VBA

    Помещенная кнопка и названная как backspace, при нажатии кнопка должна действовать как фактическое backspace в текстовом поле

    Макрос Excel 2007 получает выбранные строки

    Как я могу прочитать информацию из определенной ячейки в закрытой книге, а затем вставить ее в ячейку на моем активном листе с помощью VBA в Microsoft Excel?

    В excel получить отношение столбца, сгруппированного по данным в другом столбце

    VBA для преобразования формата таблицы PIVOT в обычную таблицу данных

    Excel VBA: копировать несколько таблиц / диапазонов с переменным размером в большой лист данных

    Измените существующий макрос для печати в PDF вместо

    Как импортировать записи MS Access в Excel из первичной таблицы и двух связанных таблиц?

    Файлы циклов, соответствующие имени

    Давайте будем гением компьютера.