相关文章推荐
至今单身的杨桃  ·  Beta Report: "Error ...·  9 月前    · 
打盹的稀饭  ·  relative-beyond-top-le ...·  11 月前    · 
空虚的生姜  ·  Customer Experience: ...·  1 年前    · 
有情有义的蟠桃  ·  python loompy - CSDN文库·  1 年前    · 
模型 。 在模型中為欄位設定格式字串,或使用 動態格式字 串來格式化你的測度。 格式字串適用於您使用該欄位的任何地方,除非有圖像或元素層級的格式字串覆蓋它。 視覺效果 。 在您的視覺上的任何欄位、度量或視覺計算中設定格式字串,即使它們本身已經有格式字串。 在這種情況下,視覺層級格式字串會覆蓋模型層級格式字串。 如果變更欄位上的彙總,從而導致先前設定的視覺效果層級格式字串失效,則會移除此格式字串。 欄位的視覺層次格式字串會保留在欄位,但視覺化計算則不會。 如果在欄位上設定視覺效果層級格式字串,然後將該欄位移除並讀取到相同的視覺效果,則會恢復此視覺效果層級格式字串。 相反地,在視覺計算中,不會恢復字串格式。 元素 。 為資料標籤、新卡片的特定元素和新切片軟體視覺設定格式字串。 在此處設定的任何格式字串會覆寫在視覺化圖表和模型層級上設定的格式字串。

這些層級為階層式,模型層級為最低層級,元素層級為最高層級。 在較高層級的資料行、量度或視覺計算上定義的格式字串會覆蓋在較低層級上定義的格式字串。

由於模型中沒有視覺計算,他們無法在模型層級設定格式字串,但可以在視覺或元素層級設置格式字串。 量值和資料行可以在所有三個層級上有格式字串:

在使用這些例子之前: 新的卡片視覺與視覺層級格式化目前需要 .NET 語法,而模型層級與元素層級格式則使用 VBA 語法。 數字格式(例如 #,##0 )在兩者中運作方式相同,但日期和時間格式不同。 另外,你必須在新卡片視覺上將 顯示單位 設為 ,否則不管格式字串如何,都會看到 K/M/B 字尾。 請參見 「故障排除」:不想要的自動縮放 問題。

數字格式(適用於各層級)

Description 新卡片與其他視覺效果: 如果您的自訂格式未如預期出現(例如您看到 12K ,而非 11,732 ),視覺的 顯示單位 設定可能是 自動 。在套用您的自訂格式字串之前,請先將 顯示單位 設定為 。 這種變化在新卡片視覺化、資料標籤和切片軟體中特別常見。 更多資訊請參見 「排除不想要的自動縮放問題 」。

新增模型層級格式字串

若要在模型中建立自訂格式字串,請選取 [模型] 檢視中的欄位,然後選取 [屬性] 窗格中 [格式] 下的下拉式箭頭。

視覺格式字串目前使用 .NET 日期/時間及數值格式標記(暫時限制)。 這意味著大小寫很重要( M =月, m =分鐘)。 模型和元素層級自訂格式字串會使用下表所記載的 VBA 樣式權杖。 此限制將在未來版本中移除,因此所有層級都使用統一的語法。

排除意外的月份或分鐘值問題

如果自訂格式顯示您預期一個月的分鐘數:

  • 請確認您是否在視覺層級套用了格式(目前使用的是 .NET 語法)。
  • 如果是,請變更 m M for month,或將自訂格式字串移至模型層級,以使用 VBA 樣式 m
  • 在 VBA 樣式的上下文中使用 nn 代表分鐘,以避免與月份符號混淆。
  • 疑難排解不期望的自動縮放(K、M、B 後綴)

    本節將討論使用者在自訂格式字串無法運作時,特別是在 新卡片 視覺效果下遇到的最常見問題。 如果你的視覺呈現像 K(千)、M(百萬)或 B(億)這類後綴,即使你設定了自訂數字格式(例如 #.### #,##0 ),這個後綴通常不是來自自訂格式字串。 視覺或元素的 顯示單元 (自動縮放)設定會套用它。

    典型原因:

  • 顯示單位設定為 Auto (預設)以供卡片、KPI、量測計、新卡片、篩選器值或資料標籤使用。
  • 已套用元素層級格式設定,但元素的顯示單位仍會自動調整。
  • 變更格式後重置的視覺計算或匯總(顯示單位已復原為自動)。
  • 如何刪除 K/M/B 後綴:

  • 選取視覺效果。

  • 打開 格式 窗格(油漆滾筒圖示)。

  • 根據你的視覺類型找到 顯示單元 設定:

    通往顯示單元的路徑
  • 檢查是否有元素層級的覆寫設定,例如資料標籤設置,也設定為「自動」。
  • 確認你沒有在自訂格式中嵌入字面上的「K」(例如 0" K" )。
  • 對於模型層級的度量,請確保沒有任何 DAX 邏輯已經能放大該值(例如除以 1,000)。
  • 範例比較:

    Setting Result

    根據值大小進行動態縮放(例如在無尾碼、K 和 M 之間切換)需要返回文字的量度(例如使用 FORMAT() 或條件式邏輯)或動態格式字串量度。 僅靠靜態自訂格式字串無法提供條件後綴邏輯。

    下表定義 Power BI 中支援的語法。

    支援的日期符號 (模型和元素層級所使用的 VBA 樣式語法)

    下列符號適用於使用 VBA 樣式 (類似 Excel) 語法的自訂格式字串。

    視覺層級自訂格式字串暫時需要 .NET 格式字元 (請參閱下列附註)。 在 .NET 自訂日期/時間格式中,大寫 M 代表月份,小寫 m 代表分鐘。 在 VBA 樣式格式中(此處用於模型和元素級別),小寫 m 代表月份。 這種差異是造成混淆的常見來源。

    如果您看到您預期一個月(如 09)的分鐘值(例如 07),則您可能輸入了 。NET 風格的格式(視覺級別)認為它是 VBA 風格。 調整大小寫 ( M vs m ) 或將格式移至模型層級。

    新增 Unicode 或特殊符號 (度數、貨幣、上標)

    自訂格式字串不支援十六進位或跳脫序列(例如 \u00B0 、 、 0xB0 ° 或 )。 若要包含符號,請在引號字面值中插入(貼上或輸入)實際的 Unicode 字元,或在某些數字格式中使用不加引號的尾隨字面值。

    格式字串 (模型/VBA 樣式)

    Power BI 不會將反斜線(\)、 \ \uXXXX 0xNN 跳脫字元模式在自訂格式字串中轉換成 Unicode。 使用角色本身。 對於視覺層級(.NET)格式,請在引號內包含實際字元(例如)。 0.0" °C" 反斜線只會逃逸下一個字元,不會產生 Unicode 序列。

    針對動態符號邏輯(例如,根據切片器選擇切換 °C/°F),請使用返回文字值的 DAX 度量或動態格式字串度量,而不是僅使用靜態自訂格式字串。

    您可以查看有關如何設定自訂值字串格式的 範例

    數字的自訂格式表示式可以有一到三個使用分號分隔的區段。 如果你包含分號但中間沒有任何內容,缺少的部分就不會顯示,你會看到 "" 。 如果您未指定分號,則會使用肯定格式。

    以下是不同值字串的不同格式範例:

    格式化字串 ( 0 ) 數字佔位符。 顯示數字或零。 如果運算式在格式化字串中的 0 出現的位置有一個數字,則顯示該數字。 否則,在該位置顯示零。 如果數字的位數少於格式表示中小數點兩側的零,則會顯示前導零或尾隨零。 如果數字的位數多於小數分隔符號後面的零,則將數字四捨五入為等同於零位數的小數位數。 如果數字的位數多於小數分隔符號前面的零,則顯示額外的數字而不進行修改。 ( # ) 數字佔位符。 顯示數字或不顯示。 如果運算式在格式字串中出現 # 的位置有一個數字,則顯示它;否則,在該位置不顯示任何內容。 此符號的作用類似零位元預留位置。 當格式表達式中數字的位數與小數點分隔符兩側的 # 字元數相同或更少時,則不會顯示前導或尾隨的零。 ( ) 小數預留位置。 在某些地區設定中,會使用逗號做為小數分隔符號。 小數預留位置會決定小數分隔符號前面和後面顯示多少位數。 如果格式運算式只包含此符號左邊的數字記號,小於一的數字就會以小數分隔符號開頭。 若要在顯示小數時添加前置零,請使用 0 作為小數分隔符號左側的第一位數位占位符。 在格式化輸出中用來作為小數預留位置的實際字元,取決於您的系統所辨識的數字格式。 百分比預留位置。 運算式乘以 100。 百分比字元 ( % ) 會插入在其出現於格式字串中的位置。 ( ) 數千個分隔符。 在某些地區設定中,句點會用作千位分隔符號。 數字中有小數點左側有四位或更多位數時,千位數分隔符將千位與百位數字分隔開來。 如果格式包含以數字預留位置 ( 0 # ) 包圍的千位分隔符號,則會指定千位分隔符號的標準使用。 相鄰的千位分隔符,或緊鄰小數分隔符左側的千位分隔符(無論是否指定小數點),意指「將數字除以1,000,並視需要進行四捨五入」。例如,你可以使用格式字串「##0,,」來表示1億等同於100。 小於一百萬的數字顯示為 0。 兩個相鄰的千位分隔字元位於小數點分隔符號的左側以外的任何位置,只會被視為指定使用千位分隔符號。 在格式化輸出中用作千位分隔符號的實際字元取決於系統辨識的數字格式。 ( ) 時間分隔符號。 在某些地區設定中,可能會使用其他字元來代表時間分隔符號。 時間分隔符號會在設定時間值格式時,分隔小時、分鐘和秒。 在格式化輸出中作為時間分隔符號使用的實際字元是由您的系統設定所決定。 ( / ) 日期分隔符號。 在某些地區設定中,可能會使用其他字元來代表日期分隔符號。 日期分隔符號會在設定日期值格式時,分隔日、月和年。 在格式化輸出中用來作為日期分隔符號的實際字元,是由您的系統設定所決定。 ( E- E+ e- e+ ) 科學格式。 如果格式表達式在 # E- E+ 之後至少包含一個數字佔位符( e- e+ ),則該數字將以科學格式顯示,並且 E e 會插入於數字與其指數之間。 數字預留位置的數目會決定指數中數字的數目。 使用 E- e- 在負指數旁放置負號。 使用 E+ e+ 在負指數旁加上負號,正指數旁加正號。 + $ () 顯示這些字面符號。 任何其他 Unicode 字元(如 °、€、μ、² 等)都可以透過輸入或貼上雙引號(例如 0.0" °C" )。 只在下一個字符需要避免被解讀時使用反斜線(不會引入十六進位或 \u 轉義)。 ( \ ) 顯示格式字串中的下一個字元。 若要將具有特殊意義的字元顯示為原樣字元,請在前面加上反斜線 (\)。 反斜線本身不會顯示。 使用反斜線與以雙引號括住下一個字元的方式相同。 若要顯示反斜線,請使用兩道反斜線 (\\)。 日期格式和時間格式字元 (a、c、d、h、m、n、p、q、s、t、w、/ 和 :) 不能顯示為常值字元,數值格式字元 (#、0、%、E、e、逗號和句號),以及字串格式字元 (@、&、<、> 和 !)。 ("ABC") 將字串顯示在雙引號 (" ") 內。

    考量與限制

  • 你無法為 string 或 Boolean 類型的欄位設定自訂格式字串。
  • 如需詳細資訊,請參閱

    VBA 格式字串 Power BI Desktop 中的量值 Power BI Desktop 中的資料類型
  • 表格中的條件格式設定
  •