Data opslaan als getal

Status
Niet open voor verdere reacties.

timmethy

Gebruiker
Lid geworden
8 apr 2009
Berichten
54
Beste Gebruikers,

Probleem: Data opslaan als getal en niet als tekst

Gegeven: Normtijd = 4,5

Methode Opslaan
ws.Cells(iRow, 3).Value = Me.txtNormtijd1.Value
Resultaat: 4,5 als TEKST

Methode2
ws.Cells(iRow, 3).Value = Val(Me.txtNormtijd1.Value)
Resultaat 4 als Getal

Nu wil ik dat VB 4,5 opslaat als Getal 4,5

Wat type ik ipv Val? of hoe los ik dit op?

mvg,

Tim
 
Beste Tim,

Dit kan je door door de cell het goede NumberFormat mee te geven.

Code:
NumberFormat = "0.00"

Dus bijvoorbeeld:
Code:
ws.Cells(iRow, 3).NumberFormat = "0.00"
ws.Cells(iRow, 3).Value = Me.txtNormtijd1.Value

Dan wordt de waarde als een nummer weergegeven met 2 decimalen.

Mvg. René
 
Beste rene,

ik heb uw code erin gezet, maar het werkt nog steeds niet hij slaat het nog steeds op als een tekstveld (links uitgelijnd)

mvg,

Tim


Verdere complicaties:
Even uitleg over wat er allemaal gebeurd

Stap 1: Het formulier opent
Stap 1.1: De normtijd wordt opgehaald uit het blad invoer Hier staat de normtijd als een getal met 2 decimalen 4,50
Stap 2: in het formulier rekent hij met 4,50 als een tijd 4 uur en 30 min, hiervoor is dus een , nodig als invoer want een . lees hij niet als een getal in visual basic.
Stap 3: hij slaat de gegevens op 4,50 wordt opgeslagen als 4,5 (tekstveld)

Als ik ipv 4,50 als invoer 4.00 doe, dan rekent hij niet meer als een tijd, maar slaat hij 4.00 wel op als 4,50 (getal notitie)

Beetje vreemd als je het mij vraagt.


Maar ik wil dus alleen op dit moment, dat hij 4,50 uit het vakje op het formulier opslaat net als hij het getal 5 opslaat als een getal en niet als een tekst
 
Laatst bewerkt:
Beste Tim

Als het goed is moet het zo werken. (Wel opletten dat je de . (punt) laat vervangen door een , (komma). Anders heb je een getalwaarde van 45 i.p.v. 4,5

Code:
ws.Cells(iRow, 3).Activate
With Selection
    .Value = VBA.Conversion.CDbl(Me.TextBox1.Value)
    .NumberFormat = "0.00"
End With

Mvg. René
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan