如何根據條件輕鬆合併Excel中的文字?
在Excel中根據特定條件合併文字是一種有價值的技術,有助於簡化數據分析,特別是在處理大型或複雜數據集時。此操作使用戶能夠根據條件或關鍵字合併儲存格值,讓報表更易讀,並促進對分組數據的深入理解。例如,假設您想列出與每個國家相關的所有名稱;根據條件合併文字可以簡潔地實現這一目標。下面,您將找到幾種在Excel中實現此目標的實用方法,適合不同版本和用戶偏好。

- 使用TEXTJOIN函數根據條件合併文字(Excel 365、2019及更高版本)
- 使用Kutools for Excel根據條件合併文字(所有版本)
- 使用FILTER和TEXTJOIN根據條件合併文字(適用於365/2021+的替代方案)
- 使用自定義函數根據條件合併文字(所有版本)
使用TEXTJOIN函數根據條件合併文字
TEXTJOIN函數與IF函數結合使用,提供了一個高效的解決方案,可根據Excel中的給定條件合併文字。此方法適用於Excel 2019、Excel 2021和Excel 365。當您希望合併滿足某條件的值時,這種方法特別有用,例如將屬於特定國家的所有名稱進行分組。該方法動態靈活,能輕鬆適應數據變化。
該技術的一個優勢是其速度和基於公式的靈活性,非常適合即時數據更新或大型數據集。然而,需要注意的是,它僅在較新版本的Excel中可用。如果您使用的是舊版本,請考慮探索以下替代方案。
1. 在目標儲存格(例如E2)中輸入以下公式:
=TEXTJOIN(", ", TRUE, IF($A$2:$A$15=D2, $B$2:$B$15, ""))
2在Excel 2019中,輸入公式後,使用快捷鍵組合 Ctrl + Shift + Enter 將其作為陣列公式應用。在Excel 365/2021及更高版本中,只需按 Enter然後,拖動填充柄向下填充其他代表不同條件的儲存格公式。見下圖:
- TEXTJOIN: 將多個儲存格的文字連接在一起,之間用指定的分隔符(如「,」)分開。
- IF函數:檢查範圍A2:A15中的每個值,看是否與D2中的條件匹配,並在匹配時返回另一範圍中的相應值。
提示:如果處理非常大的數據集,啟用手動計算模式或限制計算區域有助於保持性能。仔細檢查您的範圍,確保完全對齊;否則,公式可能返回錯誤或意外結果。
如果您的Excel不支持TEXTJOIN,或者需要更多靈活性(例如忽略錯誤、使用不同的分隔符或處理空白),請繼續閱讀以了解更多通用方法。
使用Kutools for Excel根據條件合併文字
對於Excel版本未提供「TEXTJOIN」函數或那些偏好介面驅動方法而非公式的用戶,Kutools for Excel提供了基於條件合併文字的直觀解決方案。此方法消除了對複雜公式的需要,適用於所有版本的Excel,讓廣大用戶都能使用。Kutools與Excel無縫集成,是偏愛可靠性和節省時間的用戶日常工作的理想選擇。
要使用此功能,首先安裝Kutools for Excel。安裝後,執行以下操作:
- 打開您的工作表,然後轉到「Kutools」標籤,選擇「高級LOOKUP」,隨後選擇「一對多查找(返回多個結果)」。
- 在出現的對話框中,指定顯示結果的「列表放置區域」,以及作為唯一鍵或條件的「待檢索值區域」。
- 選擇完整的數據集作為源表。
- 使用提供的下拉選單設置「關鍵列」(包含條件的列,例如國家)和「返回列」(包含要合併值的列,例如名稱)。
- 點擊「確認」執行操作。
結果:Kutools將根據指定條件立即合併相關文字,並在輸出區域中顯示結果,如下所示:
Kutools for Excel - 超過 300 種必備工具,讓 Excel 功能更強大。永久免費享受 AI 功能!立即獲取
使用Kutools的優勢:
- 適用於任何版本的Excel
- 無需輸入公式或進行陣列操作
- 減少因複雜儲存格引用而產生的錯誤風險
- 對不熟悉高級公式的用戶高效
使用FILTER和TEXTJOIN函數根據條件合併文字(適用於Excel 365/2021或更高版本的替代方案)
在Excel 365或Excel 2021及以上版本中,FILTER和TEXTJOIN的組合提供了另一種高效且動態的方法來根據條件合併文字值。這對於希望避免陣列公式但仍利用最新Excel功能的用戶特別方便。
1. 在結果儲存格(例如E2)中,輸入以下公式:
=TEXTJOIN(", ", TRUE, FILTER(B$2:B$15, A$2:A$15=D2))
2. 按Enter鍵確認公式,然後使用填充柄向下拖動公式以覆蓋所需的行數。
此方法避免了Ctrl + Shift + Enter的需求,並且如果數據發生變化則自動適應,使其在動態表格中非常穩健。在上述公式中,B$2:B$15是要合併的列,A$2:A$15是條件參考,D2是特定條件值。根據您的數據集替換範圍。請注意,FILTER需要兼容的Excel版本。
使用用戶定義函數根據條件合併文字
對於尋求定制靈活方法的用戶——尤其是缺乏動態陣列函數的Excel版本——VBA編寫的用戶定義函數(UDF)提供了一個強大的解決方案來根據給定條件合併文字。此方法允許您根據需要定制分隔符或邏輯,非常適用於遺留Excel環境或特定的定制工作流程。但需要基本熟悉Excel VBA編輯器和宏安全設置。
1. 按ALT + F11鍵啟動「Microsoft Visual Basic for Applications」窗口。
2. 在VBA窗口中,點擊「插入」>「模塊」。接著,將以下代碼複製並粘貼到出現的模塊面板中:
VBA代碼:根據條件合併文字
Function ConcatenateIf(CriteriaRange As Range, Condition As Variant, ConcatenateRange As Range, Optional Separator As String = ",") As Variant
'Updateby Extendoffice
Dim xResult As String
On Error Resume Next
If CriteriaRange.Count <> ConcatenateRange.Count Then
ConcatenateIf = CVErr(xlErrRef)
Exit Function
End If
For i = 1 To CriteriaRange.Count
If CriteriaRange.Cells(i).Value = Condition Then
xResult = xResult & Separator & ConcatenateRange.Cells(i).Value
End If
Next i
If xResult <> "" Then
xResult = VBA.Mid(xResult, VBA.Len(Separator) + 1)
End If
ConcatenateIf = xResult
Exit Function
End Function
3. 粘貼代碼後,保存並關閉代碼窗口。返回到Excel工作表。要使用此UDF,在E2儲存格中輸入類似以下的公式,然後使用填充柄向下拖動公式以覆蓋其他值:
=CONCATENATEIF($A$2:$A$15, D2, $B$2:$B$15, ",")
注意:在上述公式中,A2:A15表示帶有條件的範圍(如國家),D2是要匹配的條件,B2:B15是要合併文字的範圍。分隔符默認為逗號(「,」),但可以更改為任何字符或字符串。確保條件範圍和合併範圍大小相同,否則函數將返回錯誤。
UDF提示:
- 必須啟用宏才能使UDF工作。
- 當源數據發生變化時,UDF不會自動重新計算——如有需要,請按F9刷新。
這種基於VBA的方法最適合熟悉宏的用戶,或當無法使用原生Excel函數時。修改VBA代碼的靈活性支持高級合併邏輯或自定義格式。
在選擇適合的根據條件合併文字的方法時,請考慮您的Excel版本、操作頻率(一次性還是重複性)以及您對公式或插件的熟悉程度。如果遇到公式錯誤,請仔細檢查範圍是否匹配,所有引用是否指向預期的行或列。對於涉及VBA的解決方案,請確保已啟用宏,對於Kutools,請確認成功安裝。如果結果意外或空白,請確認實際上存在符合所選條件的數據。在日常工作流程中結合這些方法可以大大提高生產力,確保數據摘要清晰,並減少手動編輯。如果您需要其他數據處理任務的幫助,請訪問我們的教程中心,獲取更多Excel見解。
最佳 Office 辦公效率工具
🤖 | Kutools AI Aide:徹底革新數據分析,基於智能執行|生成程式碼|創建自訂公式|分析數據並生成圖表|調用 Kutools Functions… |
熱門功能:查找、選取項目的背景色或標記重複值 | 刪除空行 | 合併列或單元格且不丟失資料 | 四捨五入... | |
高級 LOOKUP:多條件查找|多值查找|多表查找|模糊查找... | |
高級下拉列表:快速創建下拉列表 | 關聯下拉列表 | 多選下拉列表 ... | |
列管理器: 添加指定數量的列 | 移動列 | 切換隱藏列的可見狀態 | 區域與列比較 ... | |
精選功能:網格聚焦 | 設計檢視 | 增強編輯欄 | 工作簿及工作表管理器 | 資源庫 (自動文本) | 日期提取器 | 合併資料 | 加密/解密儲存格 | 按清單發送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體/傾斜/刪除線 ...)... | |
前15 大工具集:12 款文本工具(添加文本,刪除特定字符,...)|50+ 種圖表 類型(甘特圖,...)|40+ 實用 公式(基於生日計算年齡,...)|19 款插入工具(插入QR码,按路徑插入圖片,...)|12 款轉換工具(金額轉大寫,匯率轉換,...)|7 款合併和分割工具(高級合併行,分割儲存格,...)| ...以及更多 |
利用 Kutools for Excel 大幅提升你的 Excel 技能,感受前所未有的高效體驗。 Kutools for Excel 提供超過300 項高級功能,助你提升效率並保存時間。 點此查看你最需要的功能...
Office Tab 為 Office 帶來標籤式介面,讓你的工作更加輕鬆
- 啟用 Word、Excel、PowerPoint 的標籤式編輯和閱讀功能
- 在同一個視窗的標籤中打開和創建多個文件,而不是在新窗口中分開開啟。
- 可提升你50% 的工作效率,每天為你大量減少滑鼠點擊次數!