Да се научим да работим с Excel - тема 2

  • 75 980
  • 732
  •   1
Отговори
# 570
  • Мнения: 1 292
Казала съм, каквото е трябвало. За да уточня "записване на макрос"= Record Macro, а не писане на макрос. Та, значи записаният макрос ще прави винаги едно и също - това, което е записал. Но, в повечето случаи искаме да въведем някакви параметри и тогава се изисква да знаем поне основни неща от VBA.
Само по-елементарните макроси не се нуждаят от корекция, затова казах, че е лесно да се запишат, но по-трудно е да се редактират.
Няма елементарни макроси...

# 571
  • София
  • Мнения: 2 271
При положение, че човек без никакви познания по VBA успява да разбере и промени записан макрос, значи не е чак толкова сложно  Rolling Eyes

# 572
  • Мнения: 4 195
Съгласна съм с Lara. И аз като нея владея макросите до ниво да си ги запиша и да си коригирам сама после кодовете. VBA ми е....да речем стъпвам внимателно и несигурно там, като самоук човек горе - долу Peace

# 573
  • Мнения: 1 292
При положение, че човек без никакви познания по VBA успява да разбере и промени записан макрос, значи не е чак толкова сложно  Rolling Eyes
Много ми е трудно да го обясня без да прозвуча като пълен кретен... Все пак ще опитам...

Конструкцията на записаният макрос е съставена от няколко прости елемента записани така, че да могат да се изпълнят последователно и точно това го прави проблемен. Когато ти или аз, или който и да е прави макрос той го прави на секции, които в общият случай могат да бъдат изпълнени последователно или по какъвто и да е начин стига това да не чупи документа. Повечето потребители (в това число и аз) са мърлячи и забравят по нещо (или по много неща), когато си съставят работен план за изготвянето на различни документи. Това не е проблем, ако ти пишеш макроса. Когато искаш да го запишеш установяваш опитно, че това е проблем и при това огромен. Всеки макрос, който работи с повече от десетина операции става невероятна драма. Лично изпитано на гърба ми - дори го демонстрирах нагледно на потребител на точно тази тема, когато и съставях малък документ за преформатиране и смятане на буквално тридесетина графи в седем раздела. Направих плана за съответният макрос за три минути, обработих детайлите за около десет... и ми отне шест опита да го запиша при положение, че съм записвал буквално стотици макроси...

В няколко думи - всеки макрос, който има дори малко повече стъпки от най-простото е наистина труден за записване без добра подготовка и опит в записването на макроси. Не защото програмно макроса е ужасно сложен - защото начина по който повечето хора мислят не е начина по който се изпълняват макроси - това чупи процеса, не "сложният" код в тях.

# 574
  • Мнения: 8
Здравейте,момичета,
имам проблем с намирането на правилната формула в Excel.Много ще съм Ви благодарна ,ако може да ми помогнете .Не успях да кача таблицата ,затова ще обясня какво ме затруднява.
Трябва да изчислявам  крайната цена  на дадени продукти след приспадането  на  две отделни отстъпки в проценти.Има разлика в крайната сума,когато обединя процентите,затова трябва да ги вадя последователно. Каква е правилната  формулата и да е активна във всичките 50 колони примерно.
Всяка седмица попълвам такава таблица с около 100 продукта и ми отнема по два часа смятане с калкулатор. Close ooooh!

Благодаря ви предварително. Simple Smile


Ариел   10,50  -5%    -3%
Бонукс  5,40   -12%  -3%
Савекс  5,60   -10%  -5%
... и т.н

# 575
  • Варна.
  • Мнения: 1 101
Едни и същи проценти ли трябва да се вадят всеки път?
Имаш ли някакви условия?

# 576
  • Мнения: 8
Да,процентите са различни всеки път,не зная как да да се справя.

# 577
  • Мнения: 1 292
Ариел   10,50  -5%    -3%
Бонукс  5,40   -12%  -3%
Савекс  5,60   -10%  -5%
... и т.н
Не съм момиче, но ще опитам да помогна Simple Smile

Най-простият начин да си свършиш работа е като използваш няколко формули и да ги копираш.

Ще използвам твоят пример.
В клетка А1 пишеш Ариел, в клетка B1 10.50, в клетка C1 пишеш =b1*0.05 (обърни внимание на десетичната запетая - ако е просто 0,5 ще ти даде 50%!), в клетка D1 пишеш =C1*0.03

След това копираш формулата до където ти трябва. За да обясня - в клетка A1 ти е името - там ще пишеш, няма как. В клетка B1 ти сумата... там също ще пишеш - няма как... В клетка C1 има процент, който ако ти е еднакъв навсякъде няма какво да пишеш. Ако си размножаваш формулата правилно ще ти сменя C1 с C2, C3, C4, C5 и т.н. В клетка D1 (респективно D2, D3, D4 имаш вторият процент, ако е еднакъв няма защо да го пишеш,ако е различен ще трябва.
Това беше най-простият вариант.

Сега този със процента за вписване
Използваме леко преработена версия на същите формули...

В A1 името, в B1 началната стойност, в C1 =B1*D1, в D1 трябва да напишеш 0,05 за примера с Ариел, в Е1 пишеш =B1-C1, във F1 пишеш =E1*G1, в G1 пишеш 0.03 според примера с Ариел, в H1 пишеш =E1-F1

За вторият пример клетките както следва са:
A1 - име
B1 - начална стойност (10,50)
C1 - формулата, която ти на колко е равен първият процент от общата сума (в случая с Ариел 5%)
D1 - клетката в която пишеш процента, за да знае формулата от къде да го вземе
E1 - клетката която ти вади първият процент от основната сума в B1
F1 - клетката която ти смята вторият процент, като за основа взима остатъка след като си извадила първият т.е. 3 процента от това, което е останало след, като си извадила 5 процента.
G1 - клетката в която си въвеждаш вторият процент за да знае F1 какъв процент искаш да извадиш
H1 - резултата от изваждането на вторият процент.

Вторият ред (А3-H3) е просто да илюстрира какво трябва да има в клетката... Той е само за твоя информация

Последна редакция: пн, 09 фев 2015, 21:00 от гадняр

# 578
  • Мнения: 8
Благодаря много за изчерпателния бърз отговор и за подробното обяснение  как да се справя. Simple Smile 
Заемам се веднага със трудната за мен задача.Ще споделя резултата

БЛАГОДАРЯ Simple Smile Simple Smile Simple Smile

# 579
  • Мнения: 1 292
Благодаря много за изчерпателния бърз отговор и за подробното обяснение  как да се справя. Simple Smile 
Заемам се веднага със трудната за мен задача.Ще споделя резултата

БЛАГОДАРЯ Simple Smile Simple Smile Simple Smile


Мога да ти пратя направо готовата формула да си я размножаваш, ако решиш... дори мога да я преработя така, че излишните неща да не се виждат. Не забравяй момента с процентите - умножаваш стойността с 0,05 за 5% например.

# 580
  • Варна
  • Мнения: 3 247
ЗКаква е правилната  формулата и да е активна във всичките 50 колони примерно.
Ариел   10,50  -5%    -3%
Бонукс  5,40   -12%  -3%
Савекс  5,60   -10%  -5%
... и т.н
Това с колоните не ми стана ясно, предполагам, че имаш предвид редове?

Иначе формулата в последната колона ще е: =B1*(1+C1)*(1+D1), ако приемем, че таблицата ти започва от клетка А1 и процентите са въведени като отрицателни числа и със знака процент. Ако процентите са положителни числа и искаш да ги приспаднеш, заменяш + с - във формулата.

# 581
  • Мнения: 8
Да,объркала съм,редове имах предвид.
Малко са ми сложни тези формули,и явно някъде бъркам,защото не ми излиза правилно крайния резултат,но продължавам с опитите.


Благодаря за помощта Simple Smile

# 582
  • Мнения: 8
Успяххххххххххххххххххххх. Simple Smile Simple Smile Simple Smile
 newsm44 newsm10

Благодаря ви от сърце,страхотни сте,много ми помогнахте. Simple Smile


А от къде мога да оправя закръглянето на крайната сума да ми е до третия знак?

Последна редакция: пн, 09 фев 2015, 23:26 от nex_i

# 583
  • Варна
  • Мнения: 3 247
Успяххххххххххххххххххххх. Simple Smile Simple Smile Simple Smile
 newsm44 newsm10

Благодаря ви от сърце,страхотни сте,много ми помогнахте. Simple Smile


А от къде мога да оправя закръглянето на крайната сума да ми е до третия знак?
=ROUND(B1*(1+C1)*(1+D1);3)

# 584
  • Мнения: 8
Благодаря,спестихте ми часове стоене и смятане пред компютъра.
Приятна вечер и спокойни сънища ви желая Simple Smile

Общи условия

Активация на акаунт