跳至主要内容

如何从单元格中提取每个单词的首字母?

Author: Xiaoyang Last Modified: 2025-07-31
extract first letter of each word

假设您的工作表中有一系列国家名称,您希望提取这些名称中每个单词的首字母。Excel 并未直接提供用于提取单元格中每个单词首字母的功能。不过,我将介绍一些实用的方法,帮助您高效完成此任务,让整个过程简单而有效。


使用公式从单元格中提取每个单词的首字母

要获取单元格内每个单词的首字母,以下数组公式可以帮助您实现。

1. 请将以下公式复制到您希望获取结果的空白单元格中,然后同时按下 Ctrl + Shift + Enter 键以获取第一个结果。

=CONCAT(LEFT(FILTERXML("<a><b>"&SUBSTITUTE(A2," ","</b><b>")&"</b></a>","//b"),1))

2. 接下来,向下拖动公式填充其他单元格。此操作将一次性自动提取每个单元格中每个单词的首字母。请参见截图:

Extract first letter of each word with formula

该公式的解释如下:
  • SUBSTITUTE(A2," ","</b><b>"):此函数将单元格 A2 中文本中的每个空格替换为 。这有效地用这些 XML 标签分隔了文本中的每个单词。例如,如果 A2 包含 "Hello World",则公式会将其转换为 "Hello</b><b>World"。
  • "<a><b>"&...&" </b></a>":这部分将 SUBSTITUTE 函数的结果用 <a><b> 包裹在开头,并用 </b></a> 包裹在结尾。继续上面的例子,字符串现在变为 <a><b>Hello</b><b>World</b></a>,形成一个有效的 XML 结构,其中每个单词都被包含在 <b> 标签中。
  • FILTERXML(...,"//b"):FILTERXML 用于解析前几步创建的 XML 字符串。XPath 查询 //b 选择所有位于 <b> 标签内的元素,即原始字符串中的每个单词。以我们的例子为例,FILTERXML 将返回一个包含两个元素的数组:“Hello” 和 “World”。
  • LEFT(...,1):接下来,LEFT 函数应用于 FILTERXML 返回的数组中的每个元素,提取每个单词的首字母。在示例中,这将得到 “H” 和 “W”。
  • CONCAT(...):最后,CONCAT 函数将数组中的所有元素连接成一个字符串。对于我们的 “Hello World” 示例,它会将 “H” 和 “W” 连接起来生成 “HW”。

使用 Kutools AI 助手从单元格中提取每个单词的首字母

借助 Kutools AI 助手快速提取单元格中每个单词的首字母。无需复杂公式,AI 助手为您自动化处理任务,使数据处理变得简单高效。优化您的 Excel 工作流程,让工作更轻松。立即试用 Kutools AI 助手,体验智能化的 Excel 操作!

Kutools for Excel 提供了超过 300 种高级功能,简化复杂任务,提升创造力与效率。 通过集成 AI 能力,Kutools 能够精准自动执行任务,让数据管理变得轻松简单。Kutools for Excel 的详细信息...         免费试用...

安装 Kutools for Excel 后,请点击 Kutools AI > AI 助手 打开 Kutools AI 助手面板:

  1. 选择数据列表,然后在聊天框中输入您的需求,点击 发送 按钮或按 Enter 键发送问题;
  2. 分析完成后,点击 执行 按钮运行。Kutools AI 助手将使用 AI 处理您的请求,并直接在 Excel 中返回结果。


通过用户定义函数从单元格中提取每个单词的首字母

从单元格中提取每个单词的首字母是一项可以通过在 Excel 中使用用户定义函数 (UDF) 来大幅优化的任务。本节探讨如何创建和使用 UDF 来高效完成此任务。

1. 按住 ALT + F11 键打开 Microsoft Visual Basic for Applications 窗口

2. 点击 插入 > 模块,并将以下代码粘贴到模块窗口中。

Function GetFirstLetters(rng As Range) As String
'Updateby Extendoffice
    Dim arr
    Dim I As Long
    arr = VBA.Split(rng, " ")
    If IsArray(arr) Then
        For I = LBound(arr) To UBound(arr)
            GetFirstLetters = GetFirstLetters & Left(arr(I), 1)
        Next I
    Else
        GetFirstLetters = Left(arr, 1)
    End If
End Function

3. 然后保存并关闭此代码,返回工作表,在空白单元格中输入公式 =GetFirstLetters(A2)。接着,拖动填充柄应用公式到其他需要的单元格。所有单词的首字母都已从一系列单词中提取出来,请参见截图:

Extract first letter of each word with User Defined Function


相关文章:

  • 从文本字符串中提取前两个或 n 个单词
  • 如果您有一个由空格分隔的文本字符串列表,现在您想从单元格值中提取前两个或最后三个或 n 个单词以获得如下截图所示的结果。本文将介绍一些公式,用于从 Excel 中的文本字符串提取前两个或最后 n 个单词。
  • 仅提取空格或逗号前后的文本
  • 当您想从列表中提取空格前后的文本(如下图所示),是否有好的方法来完成呢?让我告诉您一些巧妙的方法,只提取 Excel 中空格前后的文本。
  • 从文本字符串中提取电子邮件地址
  • 当您从网站导入一些电子邮件地址到 Excel 工作表时,通常会包含无关文本,但现在您只想从文本字符串中提取纯电子邮件地址(见下图)。如何快速仅从单元格文本中提取电子邮件地址呢?
  • 提取两个不同字符之间的字符串
  • 如果您的 Excel 中有一系列字符串,需要从中提取两个字符之间的部分字符串(如下图所示),如何尽可能快地处理呢?这里,我将介绍一些解决此问题的方法。

最佳 Office 办公效率工具

🤖 Kutools AI 助手:基于智能执行,彻底革新数据分析 生成代码创建自定义公式分析数据并生成图表调用 Kutools Functions
热门功能:查找、选中项的背景色或标记重复项|删除空行|合并列或单元格且不丢失数据|四舍五入(无公式)...
高级 LOOKUP多条件查找 (VLookup)多值查找 (VLookup)多表查找 (VLookup Across Multiple Sheets)模糊查找 (Fuzzy Lookup)...
高级下拉列表快速创建下拉列表依赖型下拉列表多选下拉列表...
列管理器添加指定数量的列移动列切换隐藏列的可见状态比较区域及列...
特色功能网格聚焦设计视图增强编辑栏工作簿 & 工作表管理器资源库(自动文本)|日期提取合并数据加密/解密单元格按列表发送电子邮件超级筛选特殊筛选(筛选粗体/倾斜/删除线等)...
热门15 大工具集12 款文本工具添加文本删除特定字符等)50+ 种图表 类型甘特图等)40+ 实用公式基于生日计算年龄等)19 款插入工具插入二维码按路径插入图片等)12 种转换工具小写金额转大写汇率转换等)7 款合并与分割工具高级合并行分割单元格等)...更多精彩等你发现
使用 Kutools,支持您的首选语言——包括英语、西班牙语、德语、法语、中文及40 多种其他语言!

用 Kutools for Excel 加速你的 Excel 技能,体验前所未有的高效办公。 Kutools for Excel 提供300 多项高级功能,助您提升效率,节省大量时间。点击此处,获取你最需要的功能...


Office Tab 为 Office 带来标签式界面,让你的工作更加轻松

  • 在 Word、Excel、PowerPoint 启用标签式编辑和阅读
  • 在同一窗口的新标签中打开和创建多个文档,无需新建窗口。
  • 办公效率提升50%,每天帮你减少上百次鼠标点击!