DateValue、TimeValue 和 DateTimeValue 函式

適用於: 畫布應用程式 桌面流程 模型導向應用程式 Power Platform CLI

將日期、時間或兩者的 字串 轉換成 日期/時間 值。

描述

  • DateValue 函式會將 日期字串 (例如,"10/01/2014") 轉換成 日期/時間 值。

  • TimeValue 函式會將 時間字串 (例如,"12:15 PM") 轉換成 日期/時間 值。

  • DateTimeValue 函式會將 日期和時間 字串 (例如,"January 10, 2013 12:13 AM") 轉換成 日期/時間 值。

DateValue 函式會忽略日期字串中的任何時間資訊,而 TimeValue 函式會忽略時間字串中的任何日期資訊。

Note

DateValue、TimeValue 和 DateTimeValue 函式預設會使用目前使用者設定中的語言。 您可以覆寫該字串,確保正確解字串。 例如,"10/1/1920" 在 "en" 中會解讀為 10 月 1 ,而在 "fr" 中為 1 月 10

日期必須是這些格式其中一種︰

  • MM/DD/YYYY 或 MM-DD-YYYY
  • DD/MM/YYYY 或 DD-MM-YYYY
  • YYYY/MM/DD 或 YYYY-MM-DD
  • MM/DD/YY 或 MM-DD-YY
  • DD/MM/YY 或 DD-MM-YY
  • DD Mon YYYY
  • Month DD, YYYY

若要從數字日期、月份及年份成分轉換,請閱讀 Date
若要從數位小時、分鐘和秒組成的轉換,請閱讀 Time

如需詳細資訊,請閱讀:

語法

DateValue( String [, Language ])
DateTimeValue( String [, Language ])
TimeValue( String [, Language ])

  • String - 必要。 包含日期、時間或日期與時間值組合的文字字串。
  • Language - 非必要。 語言字串,例如會從 Language 函式由前兩個字元傳回。 如果未提供,則會使用目前使用者的設定語言。

DateValue( Untyped )
DateTimeValue( Untyped )
TimeValue( Untyped )

  • Untyped - 必要項目。 表示日期或時間的非類型化物件。 可接受的值取決於非類型化的提供者。 對於 JSON,非類型化物件應為包含 ISO 8601 格式的日期和時間的 JSON 字串。 以其他格式顯示的日期或時間將導致錯誤。 考慮先將這些值轉換為 Text,然後再轉換為日期或時間。 請記住,與外部系統通訊時,需要著重考慮時區與地區相關的格式。

範例

DateValue

如果您將類型 10/11/2014 輸入至名為 Startdate 的文字輸入控制項,然後將標籤的Text屬性設定為下列公式︰

  • 在使用者的區域設定中轉換字串中的日期,並將結果顯示為長日期。

    Text( DateValue( Startdate.Text ), DateTimeFormat.LongDate )
    

    將裝置設定為 en 區域設定時,會將標籤顯示為 星期六,2014 年 10 月 11 日

    Note

    您可以將數個選項搭配 DateTimeFormat enum 使用。 若要顯示選項清單,請在公式列中鍵入參數,後面跟著點或句點 . 或檢查 Text 函式參考

  • 在法語區域設定中轉換字串中的日期,並將結果顯示為長日期。 在這個範例中,每月的月份與日期的解讀方式與英文不同。

    Text( DateValue( Startdate.Text, "fr" ), DateTimeFormat.LongDate )
    

    將裝置設定為 en 區域設定時,會將標籤顯示為 星期一,2014 年 11 月 10 日

如果您已鍵入 2014 年 10 月 20 日,請改為:

  • 在使用者的區域設定中轉換字串中的日期,並計算兩天 (以天為單位) 之間的時間差。

    DateDiff( DateValue( Startdate.Text ), Today() )
    

    裝置設定為 en 地區設定時,會將標籤顯示為 9,表示 10 月 11 日至 10 月 20 日之間的天數。 DateDiff 函式也可以顯示月、季或年的差異。

DateTimeValue

如果您將 10/11/2014 1:50:24.765 PM 輸入至名為 Start 的文字輸入控制項,然後將標籤的 Text 屬性設定為下列函式︰

  • 在目前的區域設定中轉換日期與時間字串。

    Text( DateTimeValue( Start.Text ), DateTimeFormat.LongDateTime )
    

    將裝置設定為 en 區域設定時,會將標籤顯示為 Saturday, October 11, 2014 1:50:24 PM

    Note

    您可以將數個選項搭配 DateTimeFormat enum 使用。 若要顯示選項清單,請在公式列中鍵入參數,後面跟著點或句點 . 或檢查 Text 函式參考

  • 在法語區域設定中轉換日期與時間字串。 會以不同方式解讀月份和月份的日期。

    Text( DateTimeValue( Start.Text, "fr"), DateTimeFormat.LongDateTime )
    

    將裝置設定為 en 區域設定時,會將標籤顯示為 Monday, November 10, 2014 1:50:24 PM

  • 在使用者的地區設定中轉換日期與時間字串,並以分數秒顯示結果。

    Text( DateTimeValue( Start.Text ), "dddd, mmmm dd, yyyy hh:mm:ss.fff AM/PM" )
    

    將裝置設定為 en 區域設定時,會將標籤顯示為 Saturday, October 11, 2014 01:50:24.765 PM

    或者若要將時間四捨五入至最接近的十 分之一 或百 分之一 秒,請指定 hh:mm:ss.fhh:mm:ss.ff

TimeValue

將文字輸入控制項命名為 FinishedAt,並將標籤的Text屬性設定為下列公式︰

If( TimeValue( FinishedAt.Text ) < TimeValue( "5:00:00.000 PM" ),
    "You made it!",
    "Too late!"
)
  • 如果您在 FinishedAt 控制項鍵入 4:59:59.999 PM,標籤會顯示 "您成功了!"
  • 如果您在 FinishedAt 控制項鍵入 5:00:00.000 PM,標籤會顯示 "您成功了!"