Applies ToExcel for Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016

I en datamodell har hver kolonne en tilknyttet datatype som angir hvilken type data kolonnen kan inneholde: heltall, desimaltall, tekst, pengedata, datoer og klokkeslett og så videre. Datatypen bestemmer også hvilke typer operasjoner du kan gjøre i kolonnen, og hvor mye minne det tar å lagre verdiene i kolonnen.

Hvis du bruker Power Pivot tillegget, kan du endre datatypen for en kolonne. Du må kanskje gjøre dette hvis en datokolonne ble importert som en streng, men du trenger den til å være noe annet. Hvis du vil ha mer informasjon, kan du se Angi datatypen for en kolonne i Power Pivot.

I denne artikkelen

Sammendrag av datatyper

Tabellen nedenfor viser datatyper som støttes i en datamodell. Når du importerer data eller bruker en verdi i en formel, selv om den opprinnelige datakilden inneholder en annen datatype, konverteres dataene til én av disse datatypene. Verdier som kommer fra formler, bruker også disse datatypene.

Datatype i Excel

Datatype i DAX

Beskrivelse

Heltall

En 64-biters (åtte byte) heltallsverdi 1, 2

Tall som ikke har desimaler. Heltall kan være positive eller negative tall, men må være heltall mellom -9 223 372 036 854 775 808 (-2^63) og 9 223 372 036 854 775 807 (2^63-1).

Desimaltall

En 64-biters (åtte byte) reelt tall 1, 2

Reelle tall er tall som kan ha desimaler. Reelle tall dekker et bredt spekter av verdier:

Negative verdier fra -1,79E +308 til og med -2,23E -308

Null

Positive verdier fra 2,23E -308 til 1,79E + 308

Antall signifikante sifre er imidlertid begrenset til 15 desimaler.

SANN/USANN

Boolsk

Enten en Sann- eller Usann-verdi.

Tekst

Streng

En datastreng for Unicode-tegn. Kan være strenger, tall eller datoer representert i et tekstformat.

Maksimal strenglengde er 268 435 456 Unicode-tegn (256 mega tegn) eller 536 870 912 byte.

Dato

Dato/klokkeslett

Datoer og klokkeslett i en godtatt representasjon av dato/klokkeslett.

Gyldige datoer er alle datoer etter 1. januar 1900.

Valuta

Valuta

Valutadatatypen tillater verdier mellom -922 337 203 685 477,5808 og 922 337 203 685 477,5807 med fire desimalsifre med fast presisjon.

I/T

Tom

En tom verdi er en datatype i DAX som representerer og erstatter SQL-nullverdier. Du kan opprette en tom verdi ved hjelp av BLANK-funksjonen og teste for tomme celler ved hjelp av den logiske funksjonen ISBLANK.

1 DAX-formler støtter ikke datatyper som er mindre enn de som er oppført i tabellen.

2 Hvis du prøver å importere data som har svært store numeriske verdier, kan importen mislykkes med følgende feil:

Databasefeil i minnet: Kolonnen <kolonnenavn> i tabellen <> inneholder en verdi, 1,7976931348623157e+308, som ikke støttes. Operasjonen er avbrutt.

Denne feilen oppstår fordi Power Pivot bruker denne verdien til å representere nullverdier. Verdiene i listen nedenfor er synonymer for nullverdien:

Value

9223372036854775807

-9223372036854775808

1,7976931348623158e+308

2.2250738585072014e-308

Fjern verdien fra dataene, og prøv å importere på nytt.

Tabelldatatype

DAX bruker en tabelldatatype i mange funksjoner, for eksempel aggregasjoner og tidsintelligensberegninger. Noen funksjoner krever en referanse til en tabell. andre funksjoner returnerer en tabell som deretter kan brukes som inndata til andre funksjoner. I noen funksjoner som krever en tabell som inndata, kan du angi et uttrykk som evalueres til en tabell. for enkelte funksjoner kreves en referanse til en basistabell. Hvis du vil ha informasjon om kravene til bestemte funksjoner, kan du se REFERANSE for DAX-funksjonen.

Implisitt og eksplisitt datatypekonvertering i DAX-formler

Hver DAX-funksjon har spesifikke krav til datatypene som brukes som inndata og utdata. Noen funksjoner krever for eksempel heltall for noen argumenter og datoer for andre. andre funksjoner krever tekst eller tabeller.

Hvis dataene i kolonnen du angir som et argument, ikke er kompatible med datatypen som kreves av funksjonen, vil DAX i mange tilfeller returnere en feil. Der det er mulig, vil DAX imidlertid forsøke å implisitt konvertere dataene til den nødvendige datatypen. Eksempel:

  • Du kan skrive inn en dato som en streng, og DAX analyserer strengen og prøver å bruke den som et av Dato- og klokkeslettformatene i Windows.

  • Du kan legge til SANN + 1 og få resultatet 2, fordi SANN konverteres implisitt til tallet 1 og operasjonen 1+1 utføres.

  • Hvis du legger til verdier i to kolonner, og én verdi representeres som tekst ("12") og den andre som et tall (12), konverterer DAX implisitt strengen til et tall og gjør deretter tillegget for et numerisk resultat. Følgende uttrykk returnerer 44: = "22" + 22

  • Hvis du prøver å kjede sammen to tall, vil Excel presentere dem som strenger og deretter kjede sammen. Følgende uttrykk returnerer «1234»: = 12 & 34

Tabellen nedenfor oppsummerer de implisitte datatypekonverteringene som utføres i formler. Excel utfører implisitte konverteringer når det er mulig, som kreves av den angitte operasjonen.

Tabell over implisitte datakonverteringer

Konverteringstypen som utføres, bestemmes av operatoren, som kaster verdiene den krever før du utfører den forespurte operasjonen. Disse tabellene viser operatorene, og angir konverteringen som utføres på hver datatype i kolonnen når den er sammenkoblet med datatypen i den kryssende raden.

Obs!: Tekstdatatyper er ikke inkludert i disse tabellene. Når et tall representeres som i et tekstformat, vil Power Pivot i noen tilfeller forsøke å bestemme talltypen og representere den som et tall.

Addisjon (+)

Operator (+)

INTEGER

CURRENCY

REAL

Dato/klokkeslett

INTEGER

INTEGER

CURRENCY

REAL

Dato/klokkeslett

CURRENCY

CURRENCY

CURRENCY

REAL

Dato/klokkeslett

REAL

REAL

REAL

REAL

Dato/klokkeslett

Dato/klokkeslett

Dato/klokkeslett

Dato/klokkeslett

Dato/klokkeslett

Dato/klokkeslett

Hvis for eksempel et reelt tall brukes i en tilleggsoperasjon i kombinasjon med valutadata, konverteres begge verdiene til REAL, og resultatet returneres som REAL.

Subtraksjon (-)

I tabellen nedenfor er radoverskriften minuend (venstre side), og kolonneoverskriften er undertrahend (høyre side).

Operator (-)

INTEGER

CURRENCY

REAL

Dato/klokkeslett

INTEGER

INTEGER

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

REAL

Dato/klokkeslett

Dato/klokkeslett

Dato/klokkeslett

Dato/klokkeslett

Dato/klokkeslett

Hvis for eksempel en dato brukes i en subtraksjonsoperasjon med en annen datatype, konverteres begge verdiene til datoer, og returverdien er også en dato.

Obs!: Datamodeller støtter også den uhyriske operatoren , - (negativ), men denne operatoren endrer ikke datatypen for operanden.

Multiplikasjon (*)

Operator (*)

INTEGER

CURRENCY

REAL

Dato/klokkeslett

INTEGER

INTEGER

CURRENCY

REAL

INTEGER

CURRENCY

CURRENCY

REAL

CURRENCY

CURRENCY

REAL

REAL

CURRENCY

REAL

REAL

Hvis for eksempel et heltall kombineres med et reelt tall i en multiplikasjonsoperasjon, konverteres begge tallene til reelle tall, og returverdien er også REELL.

Divisjon (/)

I tabellen nedenfor er radoverskriften telleren, og kolonneoverskriften er nevneren.

Operator (/)

(Rad/kolonne)

INTEGER

CURRENCY

REAL

Dato/klokkeslett

INTEGER

REAL

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

REAL

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

Dato/klokkeslett

REAL

REAL

REAL

REAL

Hvis for eksempel et heltall kombineres med en valutaverdi i en divisjonsoperasjon, konverteres begge verdiene til reelle tall, og resultatet er også et reelt tall.

Sammenligningsoperatorer

I sammenligningsuttrykk anses boolske verdier som større enn strengverdier, og strengverdier betraktes som større enn numeriske verdier eller dato/klokkeslett-verdier. tall og dato/klokkeslett-verdier anses å ha samme rangering. Ingen implisitte konverteringer utføres for boolske verdier eller strengverdier. BLANK eller en tom verdi konverteres til 0/"/false, avhengig av datatypen for den andre sammenlignede verdien.

Følgende DAX-uttrykk illustrerer denne virkemåten:

=HVIS(USANN()>"sann","Uttrykket er sant", "Uttrykket er usant"), returnerer "Uttrykket er sant"

=HVIS("12">12,"Uttrykket er sant", "Uttrykket er usant"), returnerer "Uttrykket er sant".

=HVIS("12"=12,"Uttrykket er sant", "Uttrykket er usant"), returnerer "Uttrykket er usant"

Konverteringer utføres implisitt for numeriske typer eller dato/klokkeslett-typer som beskrevet i tabellen nedenfor:

Sammenligningsoperator

INTEGER

CURRENCY

REAL

Dato/klokkeslett

INTEGER

INTEGER

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

REAL

Dato/klokkeslett

REAL

REAL

REAL

Dato/klokkeslett

Til toppen av siden

Håndtering av tomme celler, tomme strenger og nullverdier

I DAX representeres en nullverdi, tom verdi, tom celle eller en manglende verdi med samme nye verditype, en BLANK. Du kan også generere tomme celler ved hjelp av BLANK-funksjonen, eller teste for tomme celler ved hjelp av ISBLANK-funksjonen.

Hvordan tomme celler håndteres i operasjoner, for eksempel addisjon eller sammenkobling, avhenger av den individuelle funksjonen. Tabellen nedenfor oppsummerer forskjellene mellom DAX- og Microsoft Excel-formler, i måten tomme celler håndteres på.

Expression

DAX

Excel

BLANK + BLANK

BLANK

0 (null)

BLANK +5

5

5

BLANK * 5

BLANK

0 (null)

5/BLANK

Uendelig

Feil

0/BLANK

Nan

Feil

TOM/TOM

BLANK

Feil

USANN ELLER TOM

USANN

USANN

USANN OG TOM

USANN

USANN

SANN ELLER TOM

TRUE

TRUE

SANN OG TOM

USANN

SANN

TOM ELLER TOM

BLANK

Feil

TOM OG TOM

BLANK

Feil

Hvis du vil ha mer informasjon om hvordan en bestemt funksjon eller operator håndterer tomme celler, kan du se de enkelte emnene for hver DAX-funksjon i delen DAX-funksjonsreferanse.

Til toppen av siden

Trenger du mer hjelp?

Vil du ha flere alternativer?

Utforsk abonnementsfordeler, bla gjennom opplæringskurs, finn ut hvordan du sikrer enheten og mer.

Fellesskap hjelper deg med å stille og svare på spørsmål, gi tilbakemelding og høre fra eksperter med stor kunnskap.