|
надо число минут показать в формате hhhh:mm | ☑ | ||
---|---|---|---|---|
0
vde69
14.08.20
✎
10:25
|
надо в табличном документе число минут показать в формате hhhh:mm
например 5000 минут это должно быть 83:20 (обращаю внимание часов больше чем 24) при этом значение должно остаться числовым для возможности выгрузки в ексель |
|||
1
Волшебник
14.08.20
✎
10:30
|
Ну надо значит надо...
Часов = Цел(ВсегоМинут / 60); ОстатокМинут = ВсегоМинут - Часов * 60 |
|||
2
vde69
14.08.20
✎
10:36
|
(1) и как показать два числовых значения в одной ячейки?
я спрашивал про форматную строку для числа, может это как-то возможно? |
|||
3
fisher
14.08.20
✎
10:36
|
Чтобы выгрузить в Excel табличный документ таким образом, чтобы там были разные значения данных и представления данных, придется ячейки устанавливать как содержащие значения и писать число как значение ячейки, а представление писать в свойство "Текст".
|
|||
4
Волшебник
14.08.20
✎
10:39
|
(2) Всему вас учить надо....
СтрокаДляЯчейки = Формат(Часов, "ЧГ=0") + ":" + ОстатокМинут; |
|||
5
ДенисЧ
14.08.20
✎
10:52
|
"при этом значение должно остаться числовым"
и "83:20" Как-то не стыкуются. Или трусики, или крестик... |
|||
6
fisher
14.08.20
✎
10:53
|
Не, туплю. Видимо, так как ты хочешь - не получится. Ведь для того, чтобы так получилось, соответствующий формат представления должен поддерживаться и в Эксель.
|
|||
7
Kesim
14.08.20
✎
10:53
|
(5) +1
|
|||
8
fisher
14.08.20
✎
10:55
|
(5) И эксель и табличный документ поддерживает различные форматы представления для одного и того же значения ячейки. ТС хочет чтобы значением осталось число минут, а формат его представления был как он описал.
|
|||
9
Kesim
14.08.20
✎
10:55
|
(0) Чтобы осталось числом надо Часов = Окр(ВсегоМинут / 60, 2), но формат будет 1245.33
|
|||
10
fisher
14.08.20
✎
10:59
|
Если в табличном документе ячейке указать, что она содержит значение и указать формат его представления (стандартным шаблоном формата) - то такой же парой они будут сохранены и в ексель. Проблема в том, что стандартные шаблоны форматирования не поддерживают нужный ТС вариант форматирования.
|
|||
11
Волшебник
14.08.20
✎
11:53
|
заведи 2 ячейки, а одну скрой
|
|||
12
ИС-2
naïve
14.08.20
✎
12:13
|
для СКД делал функцию повторного использования
Функция ФорматДДЧЧммсс(ЧислоСекунд) Экспорт Если не ЗначениеЗаполнено(ЧислоСекунд) Тогда Возврат ""; КонецЕсли; КолВоДней = Цел(ЧислоСекунд / 86400); Дата = Дата(1,1,1) + ЧислоСекунд; Представление = Формат(Дата,"ДФ='ЧЧ ""ч."" мм ""м.""'"); Если КолВоДней > 0 Тогда Представление = "" + КолВоДней + "д." + Представление; КонецЕсли; Возврат Представление; КонецФункции Функция СекундыВДату(знач ЧислоСекунд) Экспорт Если не ЗначениеЗаполнено(ЧислоСекунд) Тогда Возврат Дата(1,1,1); КонецЕсли; КолВоДней = Цел(ЧислоСекунд / 86400); Если КолВоДней > 0 Тогда ЧислоСекунд = ЧислоСекунд - 86400; КонецЕсли; Дата = Дата(1,1,1) + ЧислоСекунд; Возврат Дата; КонецФункции Функция ФорматЧас(ЧислоСекунд, ВыводитьСекунды = ЛОЖЬ) Экспорт Если не ЗначениеЗаполнено(ЧислоСекунд) Тогда Возврат ""; КонецЕсли; КолВоЧасов = Цел(ЧислоСекунд/3600); КолВоМинут = цел((ЧислоСекунд - КолВоЧасов * 3600) / 60); КолВоСекунд = ЧислоСекунд - КолВоЧасов * 3600 - КолВоМинут * 60; Представление = ""; Если КолВоЧасов > 0 Тогда Представление = Представление + КолВоЧасов + " ч."; КонецЕсли; Если КолВоМинут > 0 Тогда Представление = Представление + КолВоМинут + " м."; КонецЕсли; Если КолВоСекунд > 0 Тогда Если ВыводитьСекунды Тогда Представление = Представление + КолВоСекунд + " с."; КонецЕсли; КонецЕсли; // //Если Представление = "" Тогда // Представление = "0 с."; //КонецЕсли; // Возврат Представление; КонецФункции |
|||
13
Serg_1960
14.08.20
✎
12:44
|
(0) Вместо "83:20" использовать "83.20" не судьба?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |