Страницы: 1
RSS
Макрос для расчёта валовой прибыли, себестоимости и рентабельности
 
Есть:  
Количество единиц (товара): = x  
Сумма продаж: = y  
Наценка % = z  
_______________________  
 
Нужно:  
Себистоймость a = x-x*z  
Валовая прибыль b = y-a  
Рентабельность % с = b/y*100  
 
Вид таблицы:  
Кол-во|Сумма продаж|себистоймость|валовая прибыль|рентабильность|  
 
+ после всей этой калькуляции надо всю строку выделить цветом  
 
Помогите написать макрос!
 
Во первых. Создание дубликата темы ничем не поможет, а наоборот могут удалить обе.  
Во вторых. Таблицу за вас никто делать не будет.  
Ваше задание можно сделать формулами - Зачем макрос.
 
Видимо правила Вы прочитали плохо. Где пример? Где Ваши наработки? Что сделано самостоятельно и что не получается, в чем нужна помощь? Ваще "Помогите" фактически значит - сделайте вместо меня. Форум не стол халявных заказов. Не хотите ничего делать самостоятельно - указывайте цену, к-рую готовы заплатить.
Я сам - дурнее всякого примера! ...
 
Таблица переносится из 1С предприятия, проблема в том что когда то товар забивался по фактической цене и теперь неверно выводится себестоимость, валовая прибыль...Там около 2.5 тыс. позиций таких. Вот хотел макрос, что бы мне только в поле себестоимость надо было бы кликнуть и вводить %наценки. Вопрос к знатокам так как вообще с экселем особо дел (до этого момента) водить не приходилось...  
Мне интересно как этого добиться...Пробовал автомакросописакой и вот что вышло:  
 
 
Sub Макрос1()  
'  
' Макрос1 Макрос  
'  
' Сочетание клавиш: Ctrl+Shift+X  
'  
   ActiveCell.FormulaR1C1 = "=RC[-1]-RC[-1]*0.25"
   Range("E64").Select  
   ActiveCell.FormulaR1C1 = "=RC[-2]-RC[-1]"
   Range("F64").Select  
   ActiveCell.FormulaR1C1 = "=RC[-1]/RC[-3]*100"
   Range("A64:F64").Select  
   Range("F64").Activate  
   With Selection.Interior  
       .Pattern = xlSolid  
       .PatternColorIndex = xlAutomatic  
       .Color = 65535  
       .TintAndShade = 0  
       .PatternTintAndShade = 0  
   End With  
End Sub  
 
вот как в range("**") установить не конкретную ячейку, а например соседнюю от неё или всю строку?
 
Звеняйте, я думал ту тему удалили, т.к. тема оформлена не по правилам была.
 
Может покажете пример в маленьком файле?
 
И все равно для помощи людям нужна Ваша таблица хоть на 5 строк. Чтоб знать от чего плясать.  
Макросы писать не умею, но могу сказать чтоб макрос не был привязан к конкретной ячейке при записи макрорекордером, перед записью нажмите кнопку "относительные ссылки" уж потом включайте запись.
 
Вот пожалуйста.  
<EM><FONT color=#99000><STRONG>Автору: Вас же предупреждали, просили заглянуть в правила...</STRONG></FONT>  - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>  
<EM><STRONG>Файл удален</STRONG> - велик размер.</EM>
 
.
 
=RC[-1]-RC[-1]*0,25 вот такая формула у меня в третьей колонке. Так же в третьей колонке сейчас много значений с точками вместо запятых. Как заменить так что бы формулу не сломать?
 
Поясните пожалуйста вот это выражение в макросе.Без него тоже работает!  
 
'Dim i&
 
Объявление переменной i типа Long. Перед работой процедуры желательно программе указывать переменные, чтобы под них сразу было выделено определенное пространство в памяти и чтобы программа понимала, что в эту переменную можно вставлять, а чего нельзя :)  
Переменную можно не объявлять.  
 
В начале модуля желательно писать Option Explicit. Эта директива предотвращает случайные ошибки. При необъявленных переменных будет ругаться.
 
vikttur, спасибо.  
Ход моих мыслей был верным. Смутила запись не такая как привычное Dim i As Long, решил уточнить.
Страницы: 1
Читают тему
Наверх