i jescze jedno pytanie: jezeli w formularzu mam liczbe wyswietlana z
dokladnoscia 2 miejsc to czy do obliczen jest brana cała liczba czy to co widac
w polu (po wcisnieciu na pole z wlasciwoscia 2 miejsc po przecinku jezeli ona
jest dluzsza to pojawia sie cala)
Pozdrawiam
MIREK
--
Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
http://web.pertus.com.pl/~stanley/faq/P004.htm
>
> i jescze jedno pytanie: jezeli w formularzu mam liczbe wyswietlana z
> dokladnoscia 2 miejsc to czy do obliczen jest brana cała liczba czy to co
widac
> w polu (po wcisnieciu na pole z wlasciwoscia 2 miejsc po przecinku jezeli
ona
> jest dluzsza to pojawia sie cala)
>
A jak myślisz ?
Uruchom przy otwartym formularzu okno Analizy programu (Ctr + G) i wpisz:
? Forms!NazwaTwojegoFormularza!NazwaTwojegoPola
i Enter
Potem możesz popróbować z wyrażeniami:
? 1 * Forms!NazwaTwojegoFormularza!NazwaTwojegoPola
? Forms!NazwaTwojegoFormularza!NazwaTwojegoPola /1
itd
Format to format - czyli jedynie sposób wyświetlania.
KN
--
Archiwum grupy http://niusy.onet.pl/pl.comp.bazy-danych.msaccess
Co do pierwszego pytania to właśnie tutaj widać wyższość Accessa2000 -
wystarczy przy właściwości pola w tablicy wybrać skala 2 i po sprawie.
jerzyn
równie dobrze można udowodnic wyższość wąsaczy nad brodaczami ...
Biorąc pod uwagę wywód nt. teorii zaokrągleń (przedstawiony na
http://web.pertus.com.pl/~stanley/faq/P004.htm), jak również wcześniejsze
sugestie grupowiczów w niniejszym temacie, funkcję pozwalającą na poprawne
zaokrąglenia do dowolnej liczby miejsc po przecinku należałoby chyba (?)
skonstruować jak następuje:
Public Function ZL(ByVal Liczba As Variant, ByVal Miejsca As Integer) As
Variant
Const TITLEBAR = ""
Dim l1, l2
l1 = Liczba * 10 ^ Miejsca
If l1 - Int(l1) <> 0.5 Then
ZL = Int(l1 + 0.5) / 10 ^ Miejsca
ElseIf l1 - Int(l1) = 0.5 Then
ZL = CLng(l1) / 10 ^ Miejsca
End If
End Function
Leo
ja bym to zrobil tak
Public Function ZL(ByVal Liczba As Variant, ByVal Miejsca As Integer) As Double
ZL = Int(Liczba * 10 ^ Miejsca + 0.5) / 10 ^ Miejsca
End Function
szybko i bez if'ow
Pozdrowienia Bohun