Excel 公式使用公式進行日期轉換 with 或 iserror

Excel 公式使用公式進行日期轉換 with 或 iserror

背景:資料來自具有歐洲格式(DD/MM/YYYY)日期的資料庫。 「已建立」欄位(A 欄)也有 24 小時格式的時間戳記。旁邊是「已識別」列(B 列),只有一個日期,可能與「建立」日期不同。

我的輸出需要是一個新的「已建立」列,其中只有美國格式的日期(無時間戳記),我知道該怎麼做。我使用 LEFT 在新列中僅捕獲歐洲日期。 (C 列)然後在另一個新列中,我使用=Date(value(right(A2,4)),value(mid(A2,4,2)),value(left(a2,2))) 重新排列日期轉換為美國格式 (MM/DD/YYYY)。 (D 欄)

以上一切都很好。這就是它變得棘手的地方,我需要對「已識別」資料進行相同的日期對話,並將其放入自己的列(E 列)中。並非每一行資料都有「已識別」日期。

如果沒有「已識別」日期,我希望我的日期公式能夠識別錯誤(顯示為#VALUE)並複製轉換後的「建立」日期。

我嘗試過使用 IF、OR 和 IsError 語句,但似乎無法得到有效的語句。

任何建議將不勝感激。我還嘗試使用=If(iserror) 創建另一列(F) 來讀取轉換後的“已識別”列,如果出現錯誤,則獲取轉換後的“創建”日期,如果不是錯誤,則獲取轉換後的“創建”日期轉換的“已識別”日期,但這給了我一個空白單元格。

我已經打出了一個簡單的 Excel 工作表示例,但我沒有看到在哪裡上傳/附加 Excel 文件的選項?

帶有註釋的公式範例工作簿的圖像

答案1

細胞方程式E2...

舊方法,使用 IF

=IF(ISBLANK(B2),D2,DATE(VALUE(RIGHT(B2,4)),VALUE(MID(B2,4,2)),VALUE(LEFT(B2,2))))

現代方式,使用 IFERROR

=IFERROR(DATE(VALUE(RIGHT(B2,4)),VALUE(MID(B2,4,2)),VALUE(LEFT(B2,2))),D2)

如果B2為空,則DATE您所使用的函數E2會產生錯誤。

舊方法使用IF函數來測試 cell 是否B2為空,如果是,則簡單地將 cell 中的內容作為其結果D2。如果測試失敗,IF函數只需使用該函數計算所需的結果DATE

現代方法不關心是什麼原因導致DATE錯誤,只在乎是否有錯誤。如果沒有錯誤,IFERROR 函數將使用第一個參數 - 函數DATE- 如果有錯誤,則使用第二個參數 - D2- 作為其結果。

現代方式是更好的選擇。其他錯誤,例如B2包含隨機文本,將導致DATEE2 中的函數出現問題。此IF版本不會正確處理此類錯誤,而IFERROR會。

相關內容