Funktioner til decimal, flydende og værdi
Gælder for: Formelkolonner Dataverse for lærredapps Skrivebordsflow Modelbaserede apps Power Pages Power Platform CLI
Konverterer en tekststreng eller andre typer til et tal.
Beskrivelse
Bemærk
Power Apps understøtter kun funktionen Værdi, og den returnerer en flydende værdi. Understøttelse af Decimal- og Flydende-funktioner tilføjes snart.
Brug funktionerne Decimal, Flydende og Værdi til at konverterer en tekststreng, der indeholder taltegn, til en numerisk værdi. Brug denne funktion, når du skal beregne tal, der er indtastet som tekst af en bruger. Disse funktioner kan også bruges til at konvertere andre typer til et tal, f.eks. dato/klokkeslæt og boolesk.
Funktionen Værdi returnerer standarddatatypen for den Power Fx-vært, du bruger, som normalt er Decimal og det bedste valg i de fleste situationer. Brug funktionerne Decimal og Flydende, når du skal bruge en bestemt datatype til et bestemt scenario, f.eks. en beregning af klargjorte scenarier med et meget stort antal. Du kan finde flere oplysninger om, hvordan du arbejder med disse datatyper, se afsnittet Tal i Datatyper.
Forskellige sprog fortolker , og . forskelligt. Som standard bruges den aktuelle brugers sprog. Du kan angive det sprog, der skal bruges sammen med en sprogkode, ved at bruge de samme sprogkoder, som returneres af funktionen Language.
Noter om strengens format:
- Strengen kan indledes med valutasymbolet for det aktuelle sprog. Valutasymbolet ignoreres. Valutasymboler for andre sprog ignoreres ikke.
- Strengen kan indeholde et procenttegn (%) i slutningen for at angive, at det er en procentdel. Tallet vil blive delt med 100, før det returneres. Procent- og valutasymboler kan ikke blandes.
- Strengen kan være i videnskabelig notation med 12 x 103 udtrykt som "12e3".
Hvis nummeret ikke har det korrekte format, returnerer disse funktioner en fejl.
Hvis du vil konvertere værdier for dato og klokkeslæt, skal du bruge funktionerne DateValue, TimeValue eller DateTimeValue.
Syntaks
Decimal( Streng [; SprogTag ] )
Float( String [, LanguageTag ] )
Værdi( Streng [; SprogTag ] )
- Streng - Påkrævet. Den streng, der skal konverteres til en numerisk værdi.
- LanguageTag - Valgfrit. Den sprogkode, der skal bruges til at fortolke strengen. Som standard bruges den aktuelle brugers sprog.
Decimal( Ikke indtastet )
Float ( Uindtastet )
Værdi( Ikke indtastet )
- Ikke indtastet - Påkrævet. objekt uden type , der repræsenterer et tal. Acceptable værdier afhænger af udbyderen af objektet uden type. I forbindelse med JSON forventes det ikke-indtastede objekt at være et JSON-tal, en boolesk værdi eller en tekst, der kan konverteres til et tal. Husk på, at landestandardrelaterede formater er vigtige overvejelser, når du kommunikerer med eksterne systemer.
Eksempler
Den bruger, der kører disse formler, befinder sig i USA og har valgt engelsk som sprog. Funktionen Language returnerer "en-US". Power Fx-værten bruger Decimal som standard.
Værdi og decimal
Da der bruges en vært med Decimal som standard, returnerer Værdi og Decimal de samme resultater.
Formel | Beskrivelse | Resultat |
---|---|---|
Værdi ( "123.456" ) Decimal( "123.456" ) |
Standardsproget "en-US" vil blive brugt, som bruger et punktum som decimalseparator. | 123.456 (Decimal) |
Værdi ( "123.456", "es-ES" ) Decimal( "123.456", "es-ES" ) |
"es-ES" er sprogmærket for spansk i Spanien. I Spanien bliver punktum brugt som tusindtalsseparator. | 123456 (Decimal) |
Værdi ( "123,456" ) Decimal( "123,456" ) |
Standardsproget "en-US" vil blive brugt, som bruger et komma som tusindtalsseparator. | 123456 (Decimal) |
Værdi ( "123.456", "es-ES" ) Decimal( "123.456", "es-ES" ) |
"es-ES" er sprogmærket for spansk i Spanien. I Spanien bliver komma brugt som decimalseparator. | 123.456 (Decimal) |
Værdi ( "12.34 %" ) Decimal( "12.34 %" ) |
Procenttegn i slutningen af strengen angiver, at dette er en procentdel. | 0.1234 (Decimal) |
Værdi ( "$ 12.34" ) Decimal( "$ 12.34" ) |
Valutasymbolet for det aktuelle sprog ignoreres. | 12.34 (Decimal) |
Værdi ( "24e3" ) Decimal( "24e3" ) |
Videnskabelig notation for 24 x 103. | 24000 (Decimal) |
Værdi ( sand) Decimal( sand ) |
Konverterer en boolesk til et tal, 0 for falsk og 1 for sand | 1 Decimal |
Float
Funktionen Flydende vil være meget tæt på de samme resultater som ovenfor. Da 123.456 ikke kan repræsenteres i Flydende, er resultatet et resultat, der er meget tæt på (123.456000000000003069544618484E2), og beregninger af sammensatte afrundingsfejl kan resultere i et uventet resultat. Den resulterende type vil i stedet være Flydende.
Hvor tingene er, hvis der bruges større eller mindre tal.
Formel | Beskrivelse | Resultat |
---|---|---|
Flyder( 1e100 ) | Da literalnummeret 1e100 er uden for området med en Decimal, resulterer det i en fejl, før du ringer til funktionen Flydende. |
Fejl (overløb) |
Decimal( 1e100 ) | Samme problem som med funktionen Flydende. | Fejl (overløb) |
Flyder( "1e100" ) | Nummeret i tekststrengen er inden for intervallet for flydende tal. | 1e100 Flydende |
Decimal( "1e100" ) | Nummeret i tekststrengen er uden for intervallet for Decimal tal. | Fejl (overløb) |
Float( "10000000000.0000000001") | Nummeret i tekststrengen er inden for intervallet for flydende tal. Antallet kræver dog mere præcision, end et Flydende tal kan angive og afkortes. | 1 (Flydende) |
Decimal( "10000000000.0000000001" ) | Nummeret i tekststrengen er inden for intervallet og præcisionen for Decimal tal. | 10000000000.0000000001 (Decimal) |