|
15 Кб. |
|
| Почему не считается в поле отчета?
Выходит ошибка - см.файл.
Пишу в поле:
= TimeValue(Format(TimeValue(Nz(Variant, #12:00:00 AM#)) - TimeValue(Nz(Variant3, #12:00:00 AM#)), "hh:nn")) | |
|
| |
|
|
|
| В общем, пишу вот так:
=TimeValue(Format(TimeValue(Nz([Variant];#0:00:00#))-TimeValue(Nz([Variant3];#0:00:00#));"hh:nn"))
И при просмотре отчета на некоторых строчках выходит Ошибка. На тех строчках, где Vriant3=0 | |
|
| |
|
|
|
|
=TimeValue(Format(TimeValue(Nz([Variant];"#0:00:00#"))-TimeValue(Nz([Variant3];"#0:00:00#"));"hh:nn"))
|
а может так
=TimeValue(Nz([Variant];0)-Nz([Variant3];0))
|
| |
|
| |
|
|
|
| не не подходит, с нулями не считает. А вот строчка:
=TimeValue(Format(TimeValue(IIf(Nz(Variant;0)=0; #12:00:00 AM#, Variant)) - TimeValue(IIf(Nz(Variant3;0)=0; #12:00:00 AM#, Variant3)); "hh:nn"))
Только вот ошибку выдает типа: "ошибка синтаксиса во ввденном выражении" | |
|
| |
|
|
|
| у ВАс Variant3 - это текст или число? | |
|
| |
|
|
|
| ну если я до этого совершала с этим математические действия. то число.
Да и вообще это формат - Дата/время | |
|
| |
|
|
|
| TimeValue принимает значение типа Date.
TimeValue(0) приводит к ошибке.
TimeValue(CDate(0)) возвращает 0:00:00
Можно так:
=Format(TimeValue(CDate(NZ([Variant];0)))-TimeValue(CDate(NZ([Variant3];0)));"hh:nn")
если в полях только время, то можно проще:
=Format(NZ([Variant];0)-NZ([Variant3];0);"hh:nn") | |
|
| |
|
|
|
| я написала вот так:
=TimeValue(Format(TimeValue(cdate(Nz(Variant, #12:00:00 AM#))) - TimeValue(cdate(Nz(Variant3, #12:00:00 AM#))); "hh:nn"))
Но только теперь там в любом случае появляется положительное число. А мне нужно, чтоб было так:
если Variant=0, то в итоге получилось бы отрицательное число.
Ну тож спмое если 0-3=-3 | |
|
| |
|
|
|
| TimeValue принимает значение типа Date.
Анатолий, ничго не путаешь?
вот из Help
TimeValue(time)
The required time argument is normally a string expression representing a time from 0:00:00
(12:00:00 A.M.) to 23:59:59 (11:59:59 P.M.), inclusive. However, time can also be any expression
that represents a time in that range. If time contains Null, Null is returned.
Remarks
You can enter valid times using a 12-hour or 24-hour clock. For example, "2:24PM" and "14:24" are
both valid time arguments.
If the time argument contains date information, TimeValue doesn't return it. However, if time
includes invalid date information, an error occurs
|
| |
|
| |
|
|
|
| написала вот так:
=TimeValue(Format(TimeValue(cdate(Nz(Variant, #12:00:00 AM#))) - TimeValue(cdate(Nz(Variant3, #12:00:00 AM#))); "hh:nn"))
Но только теперь там в любом случае появляется положительное число. А мне нужно, чтоб было так:
если Variant=0, то в итоге получилось бы отрицательное число.
Ну тож спмое если 0-3=-3 | |
|
| |
|
|
|
| Для bel:
Девушка, вы забываете, что оперируете понятием "время". Оно не может быть отрицательным. 00:00 - 02:00 = 22:00, а не -02:00
Видимо вам прийдется проверять, какое значение больше, вычитать из большего меньшее, превращать результат в текст, и при необходимости дорисовывать "-".
Для osmor:
Олег, может я и некорректно выразился, но TimeValue принимает только строку, представляющую время (дата/время), переменную типа Variant(Date) или значение Null.
Любое чиcло ею не распознается (по крайней мере в А2000).
?TimeValue(1) возвращает ошибку "Type mismatch".
Это легко проверить. | |
|
| |
|
|
|
| я сам эту функцию никогд не использовал (даже не знал что такая есть ), просто читаю Help, написано - "текст", а тут ты говоришь - "дата", вот я и переспросил, что бы знать на будущее | |
|
| |