[access] punt wordt verwijderd: 4.3 -> 43,0

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Rodyman
  • Registratie: November 2001
  • Laatst online: 08-06-2024
Ik zit al een tijdje met het probleem als ik in een formulier een getal invoer als: 15.5 dat access er automatisch 155 van maakt. Wanneer ik een komma gebruik (15,5) komt er wel netjes 15,5 te staan.

Ik had gedacht dit af te vangen doormiddel van een onKeyDown eventhandler te schrijven die elke keer als er een . (punt) geschreven wordt er automatisch een komma van te maken, maar als iemand nu zijn computer op amerikaanse regionale instellingen heeft staan werkt dit niet want dan verwijderd access namelijk alle komma's.

Iemand enig idee om dit fatsoenlijk op te lossen? ik wil namelijk niet dat als er een punt gezet wordt (wat regelmatig voorkomt als je niet het num. toetsenbord gebruikt) het getal niet meteen vertienvoudigd wordt zegmaar ;)

Acties:
  • 0 Henk 'm!

  • Phenomenon
  • Registratie: December 2000
  • Laatst online: 11-06 14:01
je kan na de invoer toch controleren wat er staat en dan met behulp van replace(), de punt voor een komma te vervangen.

Acties:
  • 0 Henk 'm!

  • Rodyman
  • Registratie: November 2001
  • Laatst online: 08-06-2024
jaa dat zou kunnen maar als iemand dat met amerikaanse settings (internationaal bedrijf dus tis mogelijk) dan doet access het precies andersom, oftewel dan haalt ie de komma weg: 14,5 -> 145
dus da werkt niet perfect

Acties:
  • 0 Henk 'm!

  • Freee!!
  • Registratie: December 2002
  • Laatst online: 22:48

Freee!!

Trotse papa van Toon en Len!

Rodyman schreef op 17 December 2002 @ 11:32:
jaa dat zou kunnen maar als iemand dat met amerikaanse settings (internationaal bedrijf dus tis mogelijk) dan doet access het precies andersom, oftewel dan haalt ie de komma weg: 14,5 -> 145
dus da werkt niet perfect
Een punt vervang je door een komma, maar een komma laat je gewoon als komma staan. 8)7 |:(

The problem with common sense is that sense never ain't common - From the notebooks of Lazarus Long

GoT voor Behoud der Nederlandschen Taal [GvBdNT


Acties:
  • 0 Henk 'm!

  • mauriceb
  • Registratie: Maart 2001
  • Laatst online: 26-05 20:23
Wat zijn de eigenschappen van het veld?

Als dit numeriek is zal Access dit inderdaad converteren naar een getal met het juiste gebruik van punten en comma's volgens de internationale instellingen.

Als je het veld definieert als tekst dan moet die het letterlijk opslaan zoals je het intypt.

Acties:
  • 0 Henk 'm!

  • Rodyman
  • Registratie: November 2001
  • Laatst online: 08-06-2024
Mr. Liu schreef op 17 December 2002 @ 11:35:
[...]

Een punt vervang je door een komma, maar een komma laat je gewoon als komma staan. 8)7 |:(
jaa maar access doet dit automatisch zoals ik hierboven al beschreven had! :X

Acties:
  • 0 Henk 'm!

  • Rodyman
  • Registratie: November 2001
  • Laatst online: 08-06-2024
mauriceb schreef op 17 December 2002 @ 11:38:
Wat zijn de eigenschappen van het veld?

Als dit numeriek is zal Access dit inderdaad converteren naar een getal met het juiste gebruik van punten en comma's volgens de internationale instellingen.

Als je het veld definieert als tekst dan moet die het letterlijk opslaan zoals je het intypt.
het is een numeriek veld maar dit is ook de bedoeling, ik wil het niet een tekstveld maken want ik wil dat er ALTIJD een notatie als xx,x staat zegmaar, en met een tekstveld moet ik dan veel moeite doen.

Acties:
  • 0 Henk 'm!

  • mauriceb
  • Registratie: Maart 2001
  • Laatst online: 26-05 20:23
Rodyman schreef op 17 December 2002 @ 11:43:
[...]
, en met een tekstveld moet ik dan veel moeite doen.
En nu ben je dus niet veel moeite aan het doen? >:)

Ik denk dat het makkelijker is om een tekstveld te definieren en dan als invoermakser (input mask) 00,0 te zetten.

Heb het net even geprobeert (1 minuut werk) :)

Acties:
  • 0 Henk 'm!

  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 14-05-2024

OZ-Gump

terug van weggeweest

Dan zet je de format van je editbox toch op general number? Lijkt me de simpelste en snelste oplossing. Dan neemt 'ie altijd de juiste instellingen namelijk.

My personal website


Acties:
  • 0 Henk 'm!

  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 14-05-2024

OZ-Gump

terug van weggeweest

Tekstvelden is niet verstandig, omdat je dan met precies dezelfde problemen zit zodra je dingen wil gaan berekenen. En een numerieke waarde als tekst opslaan is zowieso een beetje eng. Dadelijk vult iemand 12,5.5 in, en dan? Als je dan toch met een format gaat werken, werk dan met een format zodat je weg kunt schrijven in een numeriek veld, ben je meteen overal vanaf.

My personal website


Acties:
  • 0 Henk 'm!

  • Freee!!
  • Registratie: December 2002
  • Laatst online: 22:48

Freee!!

Trotse papa van Toon en Len!

Rodyman schreef op 17 december 2002 @ 11:42:
[...]
jaa maar access doet dit automatisch zoals ik hierboven al beschreven had! :X
Sorry, zo goed ben ik niet bekend met ACCESS, ik gebruik liever DB2/400 ;) . Nu ik er nog eens over na denk, denk ik dat dit een vaker voorkomend probleem zou kunnen zijn dat dan in de handleiding besproken zou moeten worden. Succes ermee, ik kan je op dit moment niet verder helpen (maar ik ben wel geïnteresseerd in de oplossing). :P

The problem with common sense is that sense never ain't common - From the notebooks of Lazarus Long

GoT voor Behoud der Nederlandschen Taal [GvBdNT


Acties:
  • 0 Henk 'm!

  • Rodyman
  • Registratie: November 2001
  • Laatst online: 08-06-2024
mauriceb schreef op 17 December 2002 @ 11:49:
[...]


En nu ben je dus niet veel moeite aan het doen? >:)

Ik denk dat het makkelijker is om een tekstveld te definieren en dan als invoermakser (input mask) 00,0 te zetten.

Heb het net even geprobeert (1 minuut werk) :)
hmm nee dit is dus niet helemaal de bedoeling omdat je dan zo'n invoermask krijgt.. waar je altijd 2 cijfers voor de komma en 1 na de komma in moet vullen.. ik wil gewoon een fixed number veld .. dus een veld dat altijd 1 cijfer achter de komma heeft. maar dan moet access hem niet automatisch gaan verbeteren door die punt weg te halen

Acties:
  • 0 Henk 'm!

  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 14-05-2024

OZ-Gump

terug van weggeweest

Hey!
Post gelezen? Als je de format van de editbox op general number zet gaat het altijd goed en hoef je niet perse twee voor en een achter de komma in te vullen. Je kunt daar dan aangeven wat wel en niet kan in je editboxje.

My personal website


Acties:
  • 0 Henk 'm!

  • Rodyman
  • Registratie: November 2001
  • Laatst online: 08-06-2024
OZ-Gump schreef op 17 December 2002 @ 12:00:
Hey!
Post gelezen? Als je de format van de editbox op general number zet gaat het altijd goed en hoef je niet perse twee voor en een achter de komma in te vullen. Je kunt daar dan aangeven wat wel en niet kan in je editboxje.
jaa maar het moeten juist fixed numbers zijn want zodra ik bijvoorbeeld 4 invoer wil ik dat er automatisch 4,0 komt te staan. Niet alleen maar 4 wat het geval is bij general number

Acties:
  • 0 Henk 'm!

  • mauriceb
  • Registratie: Maart 2001
  • Laatst online: 26-05 20:23
Dan zul je toch nog altijd gebruik moeten maken van een tekstveld, omdat zoals je zelf al aangeeft, Access de waarde gaat corrigeren.

Je kunt na invoer een functie maken die de invoer controleert en eventueel aanpast.

Acties:
  • 0 Henk 'm!

  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 14-05-2024

OZ-Gump

terug van weggeweest

maar het moeten juist fixed numbers zijn want zodra ik bijvoorbeeld 4 invoer wil ik dat er automatisch 4,0 komt te staan.
OK, als dat de bedoeling is, dan zou ik niet direct in een tabel schrijven, maar een form maken waar je gegevens in kunt kloppen en dan, als je klaar bent om weg te schrijven (door bijvoorbeeld een OK-knopje) op dat veld een format doen.
code:
1
2
3
4
5
Format(EditBox, "#,0")

of

Format(EditBox, "fixed")

Dan zou dat denk ik wel moeten werken.

[ Voor 5% gewijzigd door OZ-Gump op 17-12-2002 12:18 ]

My personal website


Acties:
  • 0 Henk 'm!

  • Rodyman
  • Registratie: November 2001
  • Laatst online: 08-06-2024
nja het kan zo.. maar ik gebruik liever geen tekstvelden voor getallen. dus laat ik het maar ff zo. dan moeten ze maar het num. toetsenbordje gebruiken om de getallen in te voeren..
Pagina: 1