Ошибки '9' out of memory VBA решения?

MIRNIY

Возникла следующая проблема:Смысл в том, чтобы там где итого, прописывалась не сумма итогов, а формула расчёта итога. Входные данные:_H______I_16.4 89500015.9 5009400 00 018 8400итого: = 16.4*895000+15.9*500940+0*0+0*0+18*8400, в виде формулы.Данных по столбцам H и I много, и при обработки возникает ошибка: run-time error '9' out of memory, потому что длина формулы больше 1024.Как можно по другому написать макрос и предпринять другие варианты?ниже макрос.
1 ответ

MIRNIY

Макрос следующий:For j = beg To i - 1 If j <> i - 1 Then hsum = ("H" & j) + "*" + ("I" & j) + "+" + hsum Else hsum = hsum + ("H" & j) + "*" + ("I" & j) End If Next j If Cells(i, 9) <> 0 Then Range("H" & i).Formula = "=ROUND(" + "Sum(" + hsum + ")" + "/" + ("I" & i) + ",1)" Else Cells(i, 8) = 0 End IfВ начале, в цикле пробегается по строкам с позиции beg до i-1 и пишет формулу, затем формула+формула. В конце получается длинная формула, которая не вмещается в память.Пожалуйста, помогите решить проблему?