Ето примера.
Изваждане на часове |
Типично "студентско" примeрче :) Въведени са данни в колонки A и B в клетка C2 е въведена формулата =B2-A2. Дръпната надолу и готовоооо:) Изглежда добре. Но има едни досадни проблемчета които рядко се отбелязват при обучението.
Какво не му е на ред?! Ако обърнете внимание при въвеждането на формулата и се дръпне надолу клетките сами се оформят от тип Time (час). Тук Excel се прави на умен и крие ревниво своите тайни. Тайната е че данните от тип Time са си дробни числа като един часа е 1/24 два часа е 2/24 и т.н. На кой му пука ще кажете вие. Но да проверим дали е така.
Добавяме колона D и в клетката D2 запишем следната функция: =IF(C2<2,"лошо","добре") (Преподавателя ни е научил на IF):) Да видим какво се получава.
Лошо, Лошо?? |
Хмм... Тук започваме да стопляме, че нещата не са както трябва. Защо при 18 часа е ЛОШО? Отговорът ви го дадох по-горе. В клетка C3 се намира стойността на "18 часЪТ" а не "18 часа"! Т.е. в колонка C имаме ЧАСОВЕ а не Продължителност!!! Тук ви трябва малко чист въздух и да продължите да четете:)
Оказва се, че не сме получили това което искаме. Какви са вариантите. Единия е да превърнем часа в продължителност. Да добавим още една колонка и в клетката E2 да въведем формулата =C2*24 с цел да преобразуваме час в число.
Нова колона |
Ха... Стана още по-зле... ?!?! Какво става тук... Спокойно. Вродената интелигентност на Excеl по някога идва в повече. Проблемът е, че упорито настоява за оформяне от тип Time! Лесно можем да го вкараме в правия път оформяйки колонката като число (Comma style).
Оформяне като число |
Всичко е Ок. Май:) Но трябва да внимавате в терминологията. Да огледаме все пак детайлно. За целта ще сравним съдържанието на клетките C2 (1:30) и E2 (1.50). Разделителя в първия случай е ":" което означава, че се чете като "Един час и тридесет МИНУТИ". Във втория случай разделителя е десетична точка и се чете като "Един час и ПОЛОВИНА"! Което е едно и също, но казано с числа:) Мисля че е ясно, че 15:15 ще бъде представено като 15.25 (четвърт) и т.н.:)
Оказва се, че един интервал може да бъде представен по два начина. Като ЧАС или ПРОДЪЛЖИТЕЛНОСТ (число)! Кой е по-добрия не знам. Изговарят се по различен начин. От вас зависи. Но имайте предвид, че за да превърнете ЧАСА в число трябва да умножите по 24 (не по 100)!! И обратно трябва да разделите на 24 да преобразувате числото в час. Т.е. формулата в d2 може да се запише като:
=IF((C2*24)<2,"лошо","добре") с корекция на час в число или като
=IF(C2<(2/24),"лошо","добре") с корекция на число в час....
Ако още не ви боли глава да кажа как се вадят часове когато втория час е по-малък от началния. Например начало:23:00 край:14:00 . В този случай към разликата трябва да се добави единица. (което е 24 ЧАСА!). Така се извършва корекцията на отрицателното число.
Ето формулата : =IF(B2<A2,B2-A2+1,B2-A2) Тук Excel няма да усети че става дума за Часове и ще се наложи вие да форматирате клетката като час!
Hint: По-горната формула може да бъде изписана по-хитро без If...
=(B2-A2+(B2<A2)) тук трикът е в това че ако B2<A2 ще се върне истина (Което е 1) и ще се извърши корекцията иначе ще върне False (което е 0) и няма да има корекция... Хитро :)
Запомнете тази формулa:) Но не забравяйте че това връща ЧАС. За ЧИСЛО формулата е :
=(B2-A2+(B2<A2))*24
:)
Здравей,
ОтговорИзтриванеБлагодаря за ти пример свърши ми работа.Но имам един въпрос.Как да превърна число в часове и минути когато става въпрос за повече от един ден.Примерно за цяла седмица.Например имам 132,5 часа седмично и искам да ги представа като 132:30
Вижте следващия трик... http://yuriy-excel.blogspot.com/2010/08/021-k.html
ОтговорИзтриванеделите на 24 клетката съдържаща числото за да го обърнете в часове и след това форматирате с [h]:mm
Още веднъж благодаря ,получи се.
ОтговорИзтриванеЗдравей,
ОтговорИзтриванеИмам проблем с превръщането но сума от минути в часове.
Пример: от клетка А2 до А8 стойностите се въвеждат ежедневно като минути, успях да ги сумирам като минути в клетка А9, но искам освен да се сумират, автоматично да се превръщат в часове. Имаш трик и за моя случай :)
Вариант 1:
ОтговорИзтриване1. "Бабешки":) Намираме цялата част и остатъка от деление на 60... И преобразуваме в текст за да го оформим красиво:) ....
=TEXT(INT(A9/60);"00")&":"&TEXT(MOD(A9;60);"00")
NB! В случая резултата е ТЕКСТ! (т.е. не може да се обработка с функции за дата и част, а само с функции за обработка на текст!
2. "Триков" (прочетете отново тази тема и следващата http://yuriy-excel.blogspot.com/2010/08/021-k.html !)... За да превърнете МИНУТИ в часове делите на 60 и после делите на 24 за да получите date формат!
=A9/60/24
След което форматирате с формат [h]:mm !
NB! Ако искате резултата да се получи директно в клетката A9 Просто на нейно място сложете SUM(A2:A8)!
Успех
Без съветите ти нямаше да се справя, благодаря ти много, да си жив и здрав :)
ОтговорИзтриване