[Access] Afronden, maar dan wel 0-en laten zien.

Pagina: 1
Acties:
  • 780 views sinds 30-01-2008
  • Reageer

  • shirly
  • Registratie: Januari 2006
  • Laatst online: 07-02-2006
Ik heb ondertussen de funtie Round() gevonden, werkt opzich prima, nu loop ik echter tegen het volgende probleem aan.
Ik wil als ik afgerond heb bv. op 3 dec. alle 3 dec zien ook als dit 0-en zijn.
Ik heb in een specificatie tabel staat op hoeveel dec. een bepaalde analyse afgerond moet worden.
In een resultaten tabel worden de gegevens van de analyses ingevoerd

daar op laat ik de volgende functie los

[af_result]: Round(T_result!gehalte;T_spec!Dec)

1) T_result!gehalte = het ingevoerde resultaat
2) T_spec!dec = op zoveel dec moet resultaat afgerond worden
3) af_result = het afgeronde resultaat
4) Dit zou ik graag als result zien.


1234
0.100020.10.10
1.110131.111.110
5.0019155.0


Weet iemand hier een oplossing voor ??

Groetjes Shirly

[ Voor 19% gewijzigd door shirly op 31-01-2006 14:46 ]

Kind regards Shirly


  • thomrob
  • Registratie: Maart 2001
  • Laatst online: 22-05 12:22

thomrob

allround developer

misschien iets met de format-functie doen?

  • shirly
  • Registratie: Januari 2006
  • Laatst online: 07-02-2006
Zover ik weet als je format 0,0000 insteld worden alle waardes zo uitgevoerd met dus 4 dec ipv de verschillende veldt lengtes die ik zoek .
of kan je per record de format aanpassen ?


Groetjes Shirly,

Kind regards Shirly


  • Boss
  • Registratie: September 1999
  • Laatst online: 22:38

Boss

+1 Overgewaardeerd

Even quick & dirty, voeg de volgende functie toe aan je database:
Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
Function ShirlyShow(Getal As Single, Decimalen As Integer)
Dim i As Integer
Dim Zeros As String
  
  If Decimalen = 0 Then
    ShirlyShow = Round(Getal, 0)
  Else
    For i = 1 To Decimalen
      Zeros = Zeros & "0"
    Next i
    ShirlyShow = Format(Getal, "0." & Zeros)
  End If
End Function

In het tekstveld kan je daarna als bron het volgende zetten:
code:
1
=ShirlyShow(T_spec!gehalte;T_spec!dec)


Maar wellicht moet je het een beetje verder tweaken.

The process of preparing programs for a digital computer is especially attractive, not only because it can be economically and scientifically rewarding, but also because it is an aesthetic experience much like composing poetry or music.


  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

shirly schreef op woensdag 01 februari 2006 @ 11:08:
Zover ik weet als je format 0,0000 insteld worden alle waardes zo uitgevoerd met dus 4 dec ipv de verschillende veldt lengtes die ik zoek .
of kan je per record de format aanpassen ?


Groetjes Shirly,
Ja, als je in de formatfunctie een verwijzing opneemt naar het veld met het aantal decimalen:
code:
1
AFGEROND: Format([INVOER];"0." & String([NDEC];"0"))

Hier staat dus in het veld nDec het aantal decimalen waarop moet worden afgerond.

offtopic:
Groetjes onder elke post? liever niet op GoT

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


  • shirly
  • Registratie: Januari 2006
  • Laatst online: 07-02-2006
Ik heb nu een soort gelijke functie

af_res: Format(Round([gehalte];[Dec]);"0." & String([Dec];"0"))

echter nu geeft hij bij 0 dec. een , achter de gehele getallen

voorbeeld
gehalte = 12
Dec = 0
uitkomt = 12,
zou graag zien = 12

Geeft jou code deze zelfde uitkomst??

Groetjes Shirly

[ Voor 14% gewijzigd door shirly op 01-02-2006 12:09 ]

Kind regards Shirly


  • shirly
  • Registratie: Januari 2006
  • Laatst online: 07-02-2006
Boss,

heb de functie in access geplakt, echter bij het in de query plaatsen

test: Shirlyshow([T_Re_012_eind]![gehalte];[T_Re_001_specificaties]![Dec])

geeft hij bij het openen de volgende error :?

De expressie bevat een ongedefinieerde functie Shirlyshow

? is hier een oplossing voor ?

Met Vriendelijke Groet
Shirly

Kind regards Shirly


  • shirly
  • Registratie: Januari 2006
  • Laatst online: 07-02-2006
BEN ER UIT !!!


af_res: Format(Round([T_Re_012_eind]![gehalte];[T_Re_001_specificaties]![Dec]);"0" & IIf([T_Re_001_specificaties]![Dec]>0;".";"") & String([T_Re_001_specificaties]![Dec];"0"))

dit werkt perfect,

allemaal heel erg bedankt voor jullie moeite & ideeen

Groetjes & liefs
Shirly

Kind regards Shirly

Pagina: 1