Functies Decimaal, Drijvend en Waarde

Van toepassing op: Canvas-apps Dataverse-formulekolommen Bureaubladstromen Modelgestuurde apps Power Platform CLI

Converteert een tekenreeks of andere soorten naar een getal.

Omschrijving

Notitie

Power Apps ondersteunt alleen de functie Waarde en retourneert een waarde Drijvend. Ondersteuning voor de functies Decimaal en Drijvend wordt binnenkort toegevoegd.

Gebruik de functies Decimaal, Drijvend en Waarde om een tekenreeks met numerieke tekens te converteren naar een numerieke waarde. Gebruik deze functies wanneer u berekeningen wilt uitvoeren met getallen die door een gebruiker zijn ingevoerd als tekst. Deze functies kunnen ook worden gebruikt om andere typen naar een getal te converteren, zoals datum/tijd en booleaanse waarde.

De functie Waarde retourneert het standaard numerieke gegevenstype voor de Power Fx-host die u gebruikt, wat meestal Decimaal is en de beste keuze is voor de meeste situaties. Gebruik de functies Decimaal en Drijvend wanneer u een specifiek gegevenstype nodig hebt voor een bepaald scenario, zoals een wetenschappelijke berekening met een zeer groot getal. Zie voor meer informatie over het werken met deze gegevenstypen de sectie Cijfers van Gegevenstypen.

Verschillende talen interpreteren , en . anders. Standaard wordt de tekst geïnterpreteerd in de taal van de huidige gebruiker. U kunt opgeven welke taal u wilt gebruiken met een taalcode, waarbij u dezelfde codes gebruikt die worden geretourneerd door de functie Language.

Opmerkingen bij de notatie van de tekenreeks:

  • De tekenreeks kan worden voorafgegaan door het valutasymbool voor de huidige taal. Het valutasymbool wordt genegeerd. Valutasymbolen voor andere talen worden niet genegeerd.
  • De tekenreeks kan een procentteken (%) aan het einde bevatten om aan te geven dat het een percentage is. Het getal wordt gedeeld door 100 voordat het wordt geretourneerd. Percentages en valutasymbolen kunnen niet worden gecombineerd.
  • De tekenreeks heeft mogelijk een wetenschappelijke notatie, waarbij 12 x 103 wordt uitgedrukt als '12e3'.

Als het getal niet de juiste notatie heeft, retourneren deze functies een foutmelding.

Als u datum- en tijdwaarden wilt omzetten, gebruikt u de functies DateWaarde, TimeWaarde of DateTimeWaarde.

Syntaxis

Decimaal( Tekenreeks [, LanguageTag ] )
Drijvend( Tekenreeks [, Taalcode ] )
Waarde( Tekenreeks [, Taalcode ])

  • String: vereist. De tekenreeks die u wilt converteren naar een numerieke waarde.
  • LanguageTag: optioneel. De code van de taal waarin de tekenreeks moet worden geparseerd. Als de code niet is opgegeven, wordt de taal van de huidige gebruiker gebruikt.

Decimaal( Niet-getypeerd )
Drijvend( Niet-getypeerd )
Waarde( Untyped )

  • Untyped: vereist. Niet-getypeerd object dat voor een getal staat. Aanvaardbare waarden zijn afhankelijk van de niet-getypeerde provider. Voor JSON wordt verwacht dat het niet-getypeerd object een JSON-getal, een booleaanse waarde of tekst is die kan worden geconverteerd naar een getal. Houd er rekening mee dat aan landinstellingen gerelateerde notaties belangrijke overwegingen zijn bij het communiceren met externe systemen.

Voorbeelden

De gebruiker die deze formules uitvoert, bevindt zich in de Verenigde Staten en Engels is geselecteerd als taal. De functie Language retourneert 'en-US'. De Power Fx-host gebruikt standaard Decimaal.

Waarde en Decimaal

Omdat we een host gebruiken die standaard Decimaal heeft, retourneren Waarde en Decimaal dezelfde resultaten.

Formule Omschrijving Result
Waarde( '123.456' )
Decimaal( '123.456' )
De standaardtaal 'en-US' wordt gebruikt, waarin een punt als decimaalteken wordt gebruikt. 123.456 (Decimaal)
Waarde( '123.456', 'es-ES' )
Decimaal( '123.456', 'es-ES' )
'es-ES' is de taalcode voor Spaans in Spanje. In Spanje wordt een punt gebruikt als scheidingsteken voor duizendtallen. 123456 (Decimaal)
Waarde( '123,456' )
Decimaal( '123,456' )
De standaardtaal 'en-US' wordt gebruikt, waarin een komma wordt gebruikt als scheidingsteken voor duizendtallen. 123456 (Decimaal)
Waarde( '123.456', 'es-ES' )
Decimaal( '123,456', 'es-ES' )
'es-ES' is de taalcode voor Spaans in Spanje. In Spanje is de komma het decimaalteken. 123.456 (Decimaal)
Waarde( '12.34%' )
Decimaal( '12,34%' )
Het procentteken aan het einde van de tekenreeks geeft aan dat dit een percentage is. 0,1234 (Decimaal)
Waarde( '$ 12.34' )
Decimaal( '$ 12,34' )
Het valutasymbool voor de huidige taal wordt genegeerd. 12,34 (Decimaal)
Waarde( '24e3' )
Decimaal( '24e3')
Wetenschappelijke notatie voor 24 x 103. 24000 (Decimaal)
Waarde( true )
Decimaal( true )
Converteert een booleaanse waarde naar een getal, 0 voor onwaar en 1 voor waar 1 Decimaal

Openstaand

De functie Drijvend zal vrijwel dezelfde resultaten opleveren als hierboven. Aangezien 123.456 niet precies kan worden weergegeven in Drijvend, is het resultaat een benadering die zeer dicht in de buurt ligt (123.456000000000003069544618484E2) en kunnen berekeningen met samengestelde afrondingsfouten tot een onverwacht resultaat leiden. Het resulterende type zal in plaats daarvan Drijvend zijn.

Waar de zaken uiteenlopen, is als er grotere of kleinere getallen worden gebruikt.

Formule Omschrijving Result
Drijvend( 1e100 ) Omdat het letterlijke getal 1e100 buiten het bereik van een Decimaal ligt, resulteert dit in een fout voordat de functie Drijvend ooit wordt aangeroepen. fout (overloop)
Decimaal( 1e100 ) Hetzelfde probleem als met de functie Drijvend. fout (overloop)
Drijvend( '1e100' ) Het getal in de tekstreeks ligt binnen het bereik van Drijvende getallen. 1e100 Drijvend
Decimaal( '1e100' ) Het getal in de tekstreeks ligt buiten het bereik van Decimale getallen. fout (overloop)
Drijvend( '10000000000.0000000001' ) Het getal in de tekstreeks ligt binnen het bereik van Drijvende getallen. Het getal vereist echter meer precisie dan een Drijvend kan bieden en wordt afgekapt. 1 (Drijvend)
Decimaal( '10000000000.0000000001' ) Het getal in de tekstreeks ligt zowel binnen het bereik als de precisie van Decimale getallen. 10000000000.0000000001 (Decimaal)