Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 Помогите с формулой  [new]
ByKiS
Member

Откуда:
Сообщений: 3760
В таблице проданных изделей есть поля Ширина, Высота, Количество, Цена. Хочу сделать функцию для рассчета стоимости, пробую так:

Function Стоимость(Ширина, Высота, Количество, Цена)
Dim Ширина, Высота, Количество, Цена As Variant
If ЕдиницаКоличестваДляЦены = "шт" Then
Стоимость = Цена * Количество
End If
If ЕдиницаКоличестваДляЦены = "ширина" Then
Стоимость = Цена * (Ширина / 1000)
End If
End Function

Может кто подскажет как надо сделать чтобы работала?
3 янв 07, 18:32    [3605239]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с формулой  [new]
mds_world
Member

Откуда: Ташкент
Сообщений: 27548
ByKiS
В таблице проданных изделей есть поля Ширина, Высота, Количество, Цена. Хочу сделать функцию для рассчета стоимости, пробую так:

Function Стоимость(Ширина, Высота, Количество, Цена)
Dim Ширина, Высота, Количество, Цена As Variant
If ЕдиницаКоличестваДляЦены = "шт" Then
Стоимость = Цена * Количество
End If
If ЕдиницаКоличестваДляЦены = "ширина" Then
Стоимость = Цена * (Ширина / 1000)
End If
End Function

Может кто подскажет как надо сделать чтобы работала?

То, что красным - убрать. Вы передаете параметры и тут же их инициализируете.

Откуда берется переменная "ЕдиницаКоличестваДляЦены"? Она Паблик?
3 янв 07, 19:18    [3605356]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с формулой  [new]
Gaola
Guest
Для отчета необходимо расчитать произведение коэффициента и тарифа, но небходимо получить цифру округленную влево на 1 разряд, например 2,7*75580= не 204066 а 204070... Подскажите плиз, как сделать цивильно???
3 янв 07, 20:25    [3605441]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с формулой  [new]
((2.7 * 75580 + 5) \ 10) * 10
Guest
3 янв 07, 20:39    [3605451]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с формулой  [new]
Gaola
Guest
(2.7 * 75580 + 5) \ 10) * 10 = 204071
Все тарифы и коэффициенты разные, надо очень точное значение. Попытка =CInt(([koef]*[tarif])/10)*10 срабатывает не для всех записей. (Access97 *_* ) При значениях 3 и 110160 выдает #Число!
3 янв 07, 20:55    [3605486]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с формулой  [new]
проку нет
Guest
((2.7 * 75580 + 5) \ 10) * 10 = 204071
левой скобки не хватает. 204071 - так быть не может! Никогда!
?(2.7 * 75580 + 5) \ 10
 20407 
?((2.7 * 75580 + 5) \ 10) * 10
 204070 
?((3 *  110160  + 5) \ 10)*10
 330480 
3 янв 07, 21:07    [3605508]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с формулой  [new]
Gaola
Guest
Сорри за левую :) меня просто интересует почему в случае с 3,00 и 110160 появляется ошибка при использовании CInt??
P.S. попробую завтра с 5. Большое спасибо!!!!!!
3 янв 07, 21:39    [3605578]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с формулой  [new]
mds_world
Member

Откуда: Ташкент
Сообщений: 27548
Gaola
меня просто интересует почему в случае с 3,00 и 110160 появляется ошибка при использовании CInt??

Ничего странного. Ф-ция CInt по определению не может работать с операндами больше (2^15-1). Нужно больше - работайте с типом Long.
3 янв 07, 21:47    [3605588]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить