Кое е оптималното решение на домашната задача?
Здравейте, искам да ви представя моето частично решение на домашната задача, в която трябва да изчислим комисионната за всеки ред на последната колона и да сметнем общата сума: Sub Komisionna() i = 2 j = 4
While IsEmpty(Cells(i, j))
Cells(i, j) = Cells(i, j - 2) * Cells(i, j - 1) i = i + 1 Wend
'Cells(i, j) = "=SUM(Cells(i-9,j):Cells(i-1,j)"
End Sub
Последният ред от макрото е в коментар, понеже не работи и "бъгва" едитора, но не мога да си обясня защо, съответно бих желал да науча алтернативен метод за използване само на клетки с елементи i, j. Допълнително бих се радвал да видя цели чужди решения на домашната задача, за да видя Вашия начин на мислене :) Благодаря предварително!
Видях отговора в следващото видео. Не съобразих, че ще бъде представен там, както и че трябва да се използват променливи за съхраняване. :)
Здравей, решението, което предлагам е свързано с темата на урока. Разбира се, че могат да се намерят и други решения. Вярното решение е това, което дава коректен резултат. Грешката в кода, който си написал, е в дефинирането на обект Range за сумата. В предишните уроци показах макроси, които записват въвеждане на екселски функции - SUM, AVERAGE (виж урок 6 от модул 2). Или запиши макрос, в който въвеждаш функцията SUM, така веднага ще видиш грешката. Във VBA също се използват вградените екселски функции, но има различен синтаксис и ги разглеждам в следващите модули. Използването на променливи е много важно, за да се научи VBA. Надявам се, че успях да отговоря на въпроса ти.