DGET 函數是一個簡單的查找函數,用於從表格或數據庫的列中檢索單個值。它特別適用於從大型電子表格中提取單個數據點,避免了無休止的滾動查找所需信息。
本指南將引導您了解該函數的語法,展示一些實際示例,並討論其優缺點。
以下是該函數的語法:
<code>=DGET(a,b,c)</code>
其中:
此函數的所有三個參數都是必需的,這意味著如果您省略任何參數,Excel 將返回 #VALUE! 錯誤。
為了更清晰地解釋這一點,以下是一些示例。
讓我們從這個非常基本的示例開始,這是一個員工 ID、姓名、部門和服務年限的列表。
上面的藍色表格是我的檢索表格,下面的綠色表格是我的數據庫。目標是在輸入員工 ID 到單元格 A2 時,在藍色檢索表格中返回員工的姓名、部門和服務年限。
在向您展示如何將數據從綠色數據庫表拉到藍色檢索表之前,讓我重點介紹上面屏幕截圖中的一些重要內容:
為了避免每次都必須在單元格 A2 中鍵入員工的 ID,我將創建一個這些數字的下拉列表。
如果您想執行相同的操作,請選擇相關的單元格,然後單擊“數據”選項卡中的“數據驗證”。然後,在“允許”字段中選擇“列表”,並在“來源”字段中選擇包含下拉數據的單元格。在我的示例中,即使我的數據庫中只有 175 個 ID,我也已將數據驗證列表擴展到單元格 A236,以便我可以添加任何其他 ID 到我的下拉列表中。
請注意,單元格 A2 現在包含一個下拉箭頭,可以單擊該箭頭以顯示完整的 ID 列表。
選擇其中一個 ID 後,我就可以開始我的 DGET 檢索了。
在單元格 B2 中,我將鍵入:
<code>=DGET(a,b,c)</code>
因為單元格A4 到E172 代表我的數據庫,B1 中的值(名字)是我希望Excel 搜索的類別或字段,而單元格A1 和A2(類別名稱“ID”和從我的下拉列表中選擇的單元格A2 中的ID)是條件。當我按下 Enter 鍵時,我可以看到 Excel 已根據單元格 A2 中的 ID 成功檢索了名字。
參數 a 和 c 在列和行引用之前包含美元符號 ($) ,因為它們是絕對引用。換句話說,這些引用永遠不會改變——我將始終使用 ID 來創建查找,數據庫將始終位於這些單元格中。我在添加每個引用到公式後按 F4 添加了這些美元符號。
但是,我故意將參數b 保留為相對引用,因為我現在將使用Excel 的填充柄將相同的公式應用於我的檢索表中的其餘類別(姓氏、部門和服務年限)。
請注意,單元格 E2 中的公式如何因此從單元格 E1 中檢索字段名稱,而數據庫和條件引用保持不變。
我現在可以使用我創建的下拉列表在單元格 A2 中選擇不同的 ID 來檢索其他員工的詳細信息。
如果您使用 Excel 的表格格式工具格式化了數據庫,則參數 a 將是表格的名稱(也稱為結構化引用),而不是其單元格引用。
為了使查找更具體——如果您由於存在多個匹配項而 DGET 持續返回 #NUM! 錯誤,這將非常有用——您可以在參數 c 中使用多個條件。
在這裡,我想返回我知道在人事部門工作了十年但我不太記得名字的員工的 ID、名字和姓氏。
首先,在單元格 A2 中,我將鍵入:
<code>=DGET(a,b,c)</code>
其中單元格 A4 到 A172 包含我的數據庫,單元格 A1 是類別,單元格 D1 到 E2 包含我的兩個條件。實際上,Excel 在單元格 D2 和 E2 之間創建了一個 AND 邏輯序列來定義我的條件。
因為我固定了數據庫和條件引用,但將類別引用保留為相對引用,所以我可以將公式複製到檢索表中的其餘單元格中,以提醒自己記住這位員工的姓名。
如果您更熟悉 VLOOKUP,您可能已經註意到您可以使用 DGET 從輸入公式的位置右側或左側檢索數據,這是 VLOOKUP 不提供的靈活性。
您還可以通過向檢索表添加另一行來創建 OR 邏輯序列。例如,如果我知道某人被雇用了1 年或2 年,但我記不起他們的名字,我將在單元格E2 中鍵入1,在單元格E3 中鍵入2,並將參數c 擴展到單元格E1 到E3。然後,Excel 將查找並返回服務年限為 1 或 2 的條目。但是,如果有多個人滿足這些條件,Excel 將返回 #NUM! 錯誤。
您可能想知道,“當還有其他更高級的函數時,我為什麼要使用 DGET?” 好吧,以下是使用此工具的一些好處:
另一方面,雖然 DGET 的簡單性使其易於使用,但也意味著需要注意一些缺點:
DGET 缺点 | 如何解决 |
---|---|
一次只能查找一条记录。每次查找都需要其自己的标题和条件。 | 使用 XLOOKUP(如果返回数组位于查找数组的右侧,则使用 VLOOKUP),或为多个搜索创建单独的 DGET 检索区域。 |
如果有多个匹配项,DGET 将返回 #NUM! 错误。 | 修改数据,使其没有重复项,或使用 VLOOKUP,它将返回找到的第一个匹配值的数。 |
DGET 不适用于水平表(类别位于行中,数据位于列中)。 | 使用 Excel 的转置工具翻转数据库的结构,使用专为适应水平表而设计的 HLOOKUP,或使用可以搜索任何方向的 XLOOKUP。 |
在本文中,我討論了 DGET、VLOOKUP、HLOOKUP 和 XLOOKUP,這些是 Excel 中一些最著名的查找函數。但是,如果我不提及 INDEX 和 MATCH,那就太疏忽了,因為——當組合使用時——它們是強大、靈活且適應性強的替代方案。
以上是如何在Excel中使用DGET函數的詳細內容。更多資訊請關注PHP中文網其他相關文章!