Funkcje Liczba dziesiętna, Liczba zmiennoprzecinkowa i Wartość

Dotyczy: Aplikacje oparte na kanwie Kolumny frmuł Dataverse Przepływy pulpitu Aplikacje oparte na modelach Power Platform CLI

Konwertuje ciąg tekstowy lub inne typy na liczbę.

Popis

Uwaga

Power Apps obsługuje tylko funkcję Wartość, a jej wartość zmiennoprzecinkowa jest zwracana. Wkrótce zostanie dodana obsługa funkcji Liczba dziesiętna i Liczba zmiennoprzecinkowa.

Funkcje Liczba dziesiętna, Liczba zmiennoprzecinkowa i Wartość są służące do konwertowania ciągu tekstu zawierającego znaki liczbowe na wartość liczbową. Tych funkcji można użyć, gdy konieczne jest wykonanie obliczeń na liczbach wprowadzonych przez użytkownika jako tekst. Te funkcje mogą być także używane do konwertowania innych typów na liczbę, takich jak data/godzina lub wartość logiczna.

Funkcja Wartość zwraca domyślny typ danych liczbowych dla hosta Power Fx, z którego jest zwykle dziesiętny i jest najlepszym rozwiązaniem w większości przypadków. Funkcje Liczba dziesiętna i Liczba zmiennoprzecinkowa są potrzebne w przypadku użycia określonego typu danych dla konkretnego scenariusza, na przykład w obliczeniach z bardzo dużą liczbą. Aby uzyskać więcej szczegółowych informacji na temat pracy z tymi typami danych, zobacz sekcję Liczby typów danych.

W różnych językach , i . są interpretowane inaczej. Domyślnie tekst jest interpretowany w języku bieżącego użytkownika. Język, który ma być stosowany, można określić za pomocą tagu języka, używając tych samych tagów języka, które są zwracane przez funkcję Language.

Uwagi na temat formatu ciągu:

  • Ciąg może być poprzedzony symbolem waluty dla bieżącego języka. Symbol waluty jest ignorowany. Symbole waluty dla innych języków nie są ignorowane.
  • Ciąg może zawierać znaku procentu (%) na końcu, co oznacza, że wartość jest procentem. Zanim liczba zostanie zwrócona, zostanie podzielona przez 100. Symbole procentu i walut nie mogą być stosowane jednocześnie.
  • Ciąg może być zapisany w notacji naukowej, w której 12 x 103 jest wyrażone jako „12e3”.

Jeśli numer nie ma odpowiedniego formatu, te funkcje będą zwracać błąd.

Aby dokonać konwersji wartości daty i godziny, należy używać funkcji DateValue, TimeValue lub DateTimeValue.

Składnia

Liczba dziesiętna( Ciąg [, LanguageTag ] )
Zmiennoprzecinkowa( Ciąg [, LanguageTag ] )
Value( Ciąg [, TagJęzyka ] )

  • Ciąg - wymagane. Ciąg przeznaczony do konwersji na wartość liczbową.
  • LanguageTag - opcjonalny. Tag języka, w którym ciąg będzie analizowany. Jeśli tag nie jest określony, używany jest język bieżącego użytkownika.

Liczba dziesiętna( Bez typu )
Zmiennoprzecinkowa( Bez typu )
Value( Untyped )

  • Bez typu — wymagane. Obiekt bez typu reprezentujący numer. Dopuszczalne wartości są zależne od niewpisanego dostawcy. W przypadku obiektu JSON obiekt bez typu powinien być liczbą JSON, wartością logiczną lub tekstem, który można przekonwertować na liczbę. Pamiętaj, że formaty związane z ustawieniami regionalnymi są ważnymi kwestiami podczas komunikowania się z systemami zewnętrznymi.

Przykłady

Użytkownik uruchamiający formuły znajduje się na terenie Stanów Zjednoczonych i wybrał jako język angielski. Funkcja Language zwraca ciąg „en-US”. W host Power Fx używa domyślnie są używane miejsca dziesiętne.

Wartość i liczba dziesiętna

Ponieważ jako wartości domyślne jest hosta z wartością dziesiętną, wartości i liczba dziesiętna zwrócone przez nas będą takie same wyniki.

Formuła Popis Result
Wartość( "123.456" )
Dziesiętne( „123,456” )
Używany jest język domyślny „en-US”, w którym kropka jest separatorem dziesiętnym. 123,456 (Dziesiętna)
Wartość( "123.456", "es-ES" )
Dziesiętna( „123,456”, „es-ES” )
„es-ES” jest tagiem języka hiszpańskiego w Hiszpanii. W Hiszpanii kropka jest separatorem tysięcy. 123456 (Dziesiętna)
Wartość( "123,456" )
Dziesiętne( „123,456” )
Używany jest język domyślny „en-US”, w którym przecinek jest separatorem tysięcy. 123456 (Dziesiętna)
Wartość( "123.456", "es-ES" )
Dziesiętna( „123,456”, „es-ES” )
„es-ES” jest tagiem języka hiszpańskiego w Hiszpanii. W Hiszpanii przecinek jest separatorem dziesiętnym. 123,456 (Dziesiętna)
Wartość( "12.34%" )
Dziesiętna( „12,34%” )
Znak procentu na końcu ciągu oznacza, że jest to wartość procentowa. 0,1234 (Dziesiętna)
Wartość( "$ 12.34" )
Dziesiętna( „$ 12,34” )
Symbol waluty dla bieżącego języka jest ignorowany. 12,34 (Dziesiętna)
Value( "24e3" )
Liczba dziesiętna( „24e3” )
Notacja naukowa dla 24 x 103. 24000 (Dziesiętna)
Wartość( prawda )
Liczba dziesiętna( prawda )
Konwertuje wartość logiczną na liczbę, 0 dla fałszu i 1 dla prawdy 1 Dziesiętna

Obrót

Funkcja Zmiennoprzecinkowa będzie funkcjonować bardzo podobnie do powyższych wyników. Jako że w 123,456 nie można dokładnie określić jako Zmiennoprzecinkowe, wynik wynika z wartości bardzo bliskiej(123,456000000000003069544618484E2), a mieszanie obliczeń błędów zaokrąglania może spowodować nieoczekiwany rezultat. W zamian wynikowy typ będzie typu Zmiennoprzecinkowy.

Gdzie są używane większe lub mniejsze liczby.

Formuła Popis Result
Zmiennoprzecinkowy( 1e100 ) Ponieważ liczba dosłowna 1e100 przekracza zakres dziesiętny, powoduje to błąd przed wywoływaniem funkcji Liczba zmiennoprzecinkowa. błąd (nadmiar)
Liczba dziesiętna( 1e100 ) Ten sam problem jak w przypadku funkcji Zmiennoprzecinkowe. błąd (nadmiar)
Zmiennoprzecinkowy( „1e100” ) Liczba w ciągu tekstowym znajduje się w zakresie Liczb zmiennoprzecinowych. 1e100 Zmiennoprzecinkowe
Liczba dziesiętna( „1e100” ) Liczba w ciągu tekstowym znajduje się poza zakresem Dziesiętnych. błąd (nadmiar)
Zmiennoprzecinkowa( „10000000000,0000000001” ) Liczba w ciągu tekstowym znajduje się w zakresie Liczb zmiennoprzecinowych. Jednak liczba wymaga dokładności większej niż zmiennoprzecinkowa i zostanie obcięte. 1 (Liczba zmiennoprzecinkowa)
Dziesiętne( „10000000000.0000000001” ) Liczba w ciągu tekstowym znajduje się zarówno w zakresie i dokładności liczb Dziesiętnych. 10000000000,0000000001 (Dziesiętna)