DateValue、TimeValue 和 DateTimeValue 函式
適用於: 畫布應用 桌面流 模型驅動應用 Power Pages Power Platform CLI
將日期、時間或兩者的 字串 轉換成 日期/時間 值。
描述
DateValue 函數將 日期字串 (例如,“10/01/2014”)轉換為 日期/時間 值。
TimeValue 函數將 時間字串 (例如,“12:15 PM”)轉換為 日期/時間 值。
DateTimeValue 函數將 日期和時間字串 (例如,“January 10,2013 12:13 AM”)轉換為 日期/時間 值。
DateValue 函數會忽略日期字串中的任何時間資訊,而 TimeValue 函數會忽略時間字串中的任何日期資訊。
注意
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( 字串 串[, 語言 ])
DateTimeValue( 字串 [, 語言 ])
TimeValue( 字串 串[, 語言 ])
- string - 必需。 包含日期、時間或日期與時間值組合的文字字串。
- language- 可選。 語言字串,例如會從 Language 函式由前兩個字元傳回。 如果未提供,則會使用目前使用者的設定語言。
DateValue( 未鍵入 )
DateTimeValue( 非類型 化)
TimeValue( 無類型 )
- Untyped - 必需。 表示日期或時間的非類型化物件。 可接受的值取決於非類型化的提供者。 對於 JSON,非類型化物件應為包含 ISO 8601 格式的日期和時間的 JSON 字串。 以其他格式顯示的日期或時間將導致錯誤。 考慮先將這些值轉換為 Text,然後再轉換為日期或時間。 請記住,與外部系統通訊時,需要著重考慮時區與地區相關的格式。
範例
DateValue
如果您將類型 10/11/2014 輸入至名為 Startdate 的文字輸入控制項,然後將標籤的Text屬性設定為下列公式︰
在使用者的區域設定中轉換字串中的日期,並將結果顯示為長日期。
Text( DateValue( Startdate.Text ), DateTimeFormat.LongDate )
將裝置設定為 en 區域設定時,會將標籤顯示為 星期六,2014 年 10 月 11 日。
注意
您可以將數個選項搭配 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。
注意
您可以將數個選項搭配 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.f 或 hh: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,標籤會顯示 "您成功了!"