|
Компьютерный форум OSzone.net » Сфера Microsoft » Microsoft Office (Word, Excel, Outlook и т.д.) » 2019 - [решено] Excel. Неправильное суммирование рабочих часов |
|
2019 - [решено] Excel. Неправильное суммирование рабочих часов
|
Пользователь Сообщения: 87 |
Профиль | Отправить PM | Цитировать
На работе в отделе кадров много лет велся учет рабочего времени в таблице excel но число рабочих дней, доп. часы, выходные и тд они вычитывали в уме или на калькуляторе и писали в ячейку нужную цифру. Как то они узнали что я знаю excel и попросили сделать формулы что бы итоги вычитались автоматически. Все колонки рассчитывали правильно точь в точь, радости не было предела у той женщине. Но когда ввели данные на следующий месяц то нашли 1 баг, колонка с дополнительными часами (отработанные в выходные) неправильно суммирует часы. Если поставить на выходные дни 1,4 и 1,4 то в колонке итог получается 2,8 а надо чтобы вышло 3,20 (3 часа и 20 минут). Посмотрел пару видео уроков на ютубе по этой теме и единственное решение везде показывали что надо писать не 1,4 а 1:40 и чуток по шаманить с итоговой формулой. Данный метод рабочий но нам не подходит так как все ячейки у нас имеют общии формат что бы могли туда писать как и число как и букву (напривер в - выходной день) и если написать туда 1:40 ячейка меняет формат и на следующий месяц если нужно туда поставить букву то будет отображаться каракули вместо буквы. Надо менять обратно формат ячейки на общии а это непосильная задача для человека который годы вычитывал итоги в уме и писал туда цифру. Как сделать чтобы итог доп. рабочие часы 1,4 и 1,4 получалось 3,20?
P.S. исходную таблицу прикрепляю. |
|
Отправлено: 17:00, 27-04-2020 |
Ветеран Сообщения: 2708
|
Профиль | Отправить PM | Цитировать
Tolea3, Основывать зависимость вычислений от дифференциации цвета
Могу предложить другую идею: основное время писать цифрами (7,50), а дополнительное - цифрами с + (7,50+) на конце. Вот доработанная функция. Function SumTimDec(rall As Range, Optional Flag As Integer = 1) SumTimDec1 = 0 SumTimDec2 = 0 For Each r In rall If IsNumeric(r) Then If Flag = 1 And Right(r, 1) <> "+" Then SumTimDec1 = SumTimDec1 + Int(r) SumTimDec2 = SumTimDec2 + (r - Int(r)) * 100 End If If Flag = 2 And Right(r, 1) = "+" Then rr = CDec(r) SumTimDec1 = SumTimDec1 + Int(rr) SumTimDec2 = SumTimDec2 + (rr - Int(rr)) * 100 End If End If Next SumTimDec = SumTimDec1 + Int(SumTimDec2 / 60) + Round((SumTimDec2 Mod 60) / 100, 2) If Flag = 2 Then SumTimDec = CStr(SumTimDec) + "+" End Function |
||||
------- Последний раз редактировалось megaloman, 28-04-2020 в 08:20. Отправлено: 08:14, 28-04-2020 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 87
|
Профиль | Отправить PM | Цитировать megaloman, спасибо за идею. я спрошу человека как ему будет удобнее из двух вариантов и сделаю финальный вариант.
|
Отправлено: 13:25, 28-04-2020 | #12 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать |
Отправлено: 17:20, 28-04-2020 | #13 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
2010 - [решено] Excel 2010. Суммирование по столбцу: разные суммы, лист на млн. строк и т.д. | flev45 | Microsoft Office (Word, Excel, Outlook и т.д.) | 2 | 29-05-2019 13:12 | |
Снижение стоимости часов Pebble и возможное появление часов LG на webOS | OSZone News | Новости информационных технологий | 0 | 02-10-2014 19:30 | |
Неправильное разрешение | Said88 | Хочу все знать | 6 | 06-03-2013 15:17 | |
2003/XP/2000 - [решено] Excel: Суммирование диапазона Сумесли() | White-Lion | Microsoft Office (Word, Excel, Outlook и т.д.) | 4 | 06-09-2012 11:51 | |
Excel. Многоуровневое суммирование | Senat | Программирование и базы данных | 2 | 30-11-2004 09:55 |
|