通過跳過複雜的解析表達式並在 Microsoft Excel 中使用 Flash Fill 和 Power Query 來簡化數據轉換。

“如何在 Microsoft Excel 中解析數據”

如果您在 Microsoft Excel 中處理導入的或外來的數據,您可能必須先清理一下數據,然後才能使用它。您可能必須刪除值開頭或結尾的空格,或者將一列值從文本重新格式化為數字,反之亦然。當一列存儲多個值時,解析值也很常見。

一個很好的例子就是名字。您經常會在單個列中找到整個名稱,這使得這些值難以使用。在本教程中,我將向您展示使用 Excel 的 Flash Fill 和 Power Query 功能解析數據的兩種快速方法。

我在 Windows 10 64 位系統上使用 Microsoft 365。您可以在舊版本中使用字符串函數,包括 .xls 菜單格式。Flash Fill 在 Excel 2013 及更高版本中可用,Power Query 在 Excel 2010 及更高版本中可用。此外,Excel 網頁版 支持 Flash Fill。您還可以在 Excel for web 中打開現有的 Power Query 查詢,但不能在瀏覽器版本中創建它們。

如何使用 Microsoft Excel 字符串函數進行解析
在 Flash Fill 之前,大多數解析需要結合字符串函數,例如 RIGHT()、LEFT()、MID()、FIND() 和 LEN()。例如,圖 A 的D 列中的表達式。

=IFERROR(RIGHT(B3,LEN(B3)-IFERROR(FIND(” “,B3,FIND(” “,B3)+1),FIND(” “,B3))),B3)

上面的表達式從 B 列中的值返回姓氏。 IFERROR() 在沒有第二個空格時處理錯誤。幸運的是,我們的名稱值在格式上是一致的,但情況並非總是如此。即使 IFERROR() 被刪除,它仍然是一個複雜而乏味的表達式。

Flash Fill 可以在 Microsoft Excel 的更新版本中完成許多解析任務。

如何使用 Flash Fill 解析 Microsoft Excel 中的數據
Excel 的 Flash Fill 功能自 Excel 2013 以來就已經存在,因此您可能對它很熟悉。使用它進行解析時,在目標列中輸入第一個值,以便 Excel 可以評估模式。有時,Flash Fill 只需要一個值。因為我們的數據是一致的,所以這個解析任務會很容易。
讓我們使用 Flash Fill 從列 B 中的名稱值中解析姓氏。
首先,在 C3 中輸入Harkins,然後按 Ctrl + Enter。最有可能的是,Flash Fill 不會填充該列。
然後,在 Smyth 中輸入前幾個字符,如圖 B所示。如您所見,Flash Fill 現在具有填充整個列的模式和提議。

按 Enter 填充剩餘的單元格,如圖 C所示。

Excel 的 Flash Fill 比組合字符串函數更快、更容易。即使數據不一致,此功能也能很好地找到模式。

Excel 網頁版 支持 Flash 填充。在“數據”選項卡上查找它。不要按 Ctrl + Enter,而是單擊 Data Tools 組中的 Flash Fill。

如何使用 Power Query 解析 Microsoft Excel 中的數據
Power Query 適用於 Microsoft Excel 2010 及更高版本的用戶。它的目的是檢索和清理數據,但它充滿了可以做更多事情的功能。使用 Power Query,我們將添加一列並將姓氏解析到該列中。
首先,我們需要將數據加載到 Power Query 中,如下所示:
單擊要加載到 Power Query 的表內的任意位置。
單擊數據選項卡。
在獲取和轉換數據組中,單擊從表/範圍。
如果您尚未將數據格式化為表格,Power Query 將提示您這樣做。演示表是 TablePersonnel。您不需要命名表,但命名表更易於使用。
圖 D顯示了 Power Query 中的 TablePersonnel。

數據在 Power Query 中後,添加基於人員列的列。
首先,單擊人員標題以選擇列,然後單擊添加列選項卡。
在 General Group 中,從 Column From Examples 下拉列表中選擇 From Selection(圖 E)。Power Query 添加一個新的空白列。要為此列輸入新的姓氏值,我們將使用 Power Query 自己的 Flash Fill 版本。

在新列的第一個單元格 Column 1 中,輸入Harkins(圖 F)。Power Query 通過為整個列提供一組姓氏值來響應。仔細看看他們。如果不正確,請輸入另一個姓氏。但是,Power Query 返回正確的列表,只有一個名稱來為我們的數據設置模式。

單擊 OK 以創建並使用姓氏填充新列,如圖 G所示

剩下要做的就是將修改後的數據保存到 Microsoft Excel,如下所示:
單擊主頁選項卡。
在關閉組中,單擊關閉和加載下拉列表中的關閉和加載。
圖 H顯示了 Excel 工作表中已解析的姓氏。Power Query 使用名稱 TablePersonnel 來命名新工作表。此時,您可以重命名新列。您也可以在保存數據之前在 Power Query 中執行此操作。

Flash Fill 肯定更快,但當您已經在 Power Query 中處理數據時,了解 Power Query 方法會有所幫助。
-文章作者Susan Harkins[/fusion_builder_coumn]