Excel公式:如何按大写字母拆分字符串

2024-02-03

使用公式而不是VBA,我想提出一个解决方案来分割由多个单词组成的字符串。该公式应该识别有大写字母的单词并将它们分开。结果将是一个字符串,其中单词之间用“,”分隔。

为了澄清这一点,我们举一个字符串的例子:

Nursing StudentStudentNurseNursing School

Desired Result:
Nursing Student,Student,Nurse,Nursing School

我正在尝试以下公式,但我只能隔离第一个单词:

{=LEFT(Q4,SMALL(FIND(CHAR(ROW(INDIRECT("65:90"))),Q4&"ABCDEFGHIJKLMNOPQRSTUVWXYZ"),2)-1)}

有什么建议吗?


要实现此目的,您将需要纯 VBA。创建一个自定义函数以在 1 个单元格中获取所需的字符串。然后,如果需要,稍后可以使用“文本分列”。

我的功能:

Public Function GET_STRING(ByVal ThisCell As Range) As String
Dim i As Integer

Dim MyPositions As String
Dim ArrPositions As Variant

For i = 2 To Len(ThisCell.Value) Step 1
    If Mid(ThisCell.Value, i, 1) = UCase(Mid(ThisCell.Value, i, 1)) And _
    Mid(ThisCell.Value, i, 1) <> " " And Left(Mid(ThisCell.Value, i - 1, 1), 1) <> " " Then MyPositions = MyPositions & i & ";"
Next i

ArrPositions = Split(Left(MyPositions, Len(MyPositions) - 1), ";")

For i = 0 To UBound(ArrPositions) Step 1
    If i = 0 Then
        GET_STRING = Left(ThisCell.Value, ArrPositions(i) - 1) & "," & Mid(ThisCell.Value, ArrPositions(i), ArrPositions(i + 1) - ArrPositions(i))
    ElseIf i <> UBound(ArrPositions) Then
        GET_STRING = GET_STRING & "," & Mid(ThisCell.Value, ArrPositions(i), ArrPositions(i + 1) - ArrPositions(i))
    Else
        GET_STRING = GET_STRING & "," & Mid(ThisCell.Value, ArrPositions(i), Len(ThisCell.Value) - ArrPositions(i) + 1)
    End If
Next i

End Function

当我在 Excel 上使用它时我得到什么

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Excel公式:如何按大写字母拆分字符串 的相关文章

  • Excel 的查找和查找下一个 VBA

    我一直在试图弄清楚如何处理这个问题 但基本上我想要一种方法来打印 B 列中的值 给定与 A 列匹配的特定值 例如 Column A Column B 1 ABC 2 DEF 3 GHI 1 JKL 我想在使用 find findnext 或
  • 使用 VBA 从数据透视表中提取数据

    我编写了以下 vba 代码 该代码应该从 old xlsx 的某些单元格导入任何现有数据 这些单元格是数据透视表的一部分 并且 OE gt location gt qual in 作为其行的子单元格 该列由手动输入的日期决定 strForm
  • 是否有任何公式可用于将特定单元格复制指定次数?

    目前我正在处理一份数据 其中我有一个公司名称列表 例如 1 A 2 B 3 C 还有很多 需要的结果是 1 A 2 A 3 A 4 A 5 A 6 B 7 B 8 B 9 B 10 B 11 C 12 C 13 C 14 C 15 C 等等
  • 如何将多个 Excel 工作表转换为 csv python

    我想转换所有的excel文档 xls 将工作表转换为 csv 如果 excel 文档只有一张工作表 那么我将进行如下转换 wb open workbook path1 sh wb sheet by name Sheet1 csv file
  • 您可以调整用户窗体的这些代码吗:使其小而高效

    当 userfrom 按以下顺序激活时 我想在运行时添加动态用户表单控件 例如 标签 文本框 我想要类似以下的东西 当用户表单激活时 它需要询问用户字段的数量 他 她想要插入 如果用户回答7 则需要按以下顺序添加字段 3 列顺序 标签1 文
  • Excel VBA:排序,然后复制和粘贴

    所有 我需要编写一个执行以下操作的宏 将数据输入到 E 列的最后一个空白单元格后 按 E 列对整个工作表进行降序排序 工作表排序后 2a 将单元格复制到紧邻首次输入数据的单元格左侧的相邻单元格 2b 将复制的数据粘贴到最初输入数据的同一行的
  • 无法使用 Excel JavaScript API 设置 NumberFormat

    我正在使用 Excel Javascript API 在搜索文档后 仍然找不到我想要实现的解决方案 因此 我想将所有内容设置为数字格式 文本 这样 Excel 的自动格式设置就不会与任何单元格的内容混淆 不会删除前导零或更改日期格式 文档建
  • 如何使用 C# 在 MS Excel 单元格中添加数字验证

    我的目标是限制用户在 MS Excel 单元格中仅输入 1 到 100 范围内的值 我正在以编程方式生成 Excel 文件 但是当我添加上述验证时 抛出异常Exception from HRESULT 0x800A03EC 我写的代码如下
  • 关闭工作簿时删除范围,xls vba

    我想要范围 Range A2 G z 关闭工作簿时删除 有人可以帮我处理代码吗 谢谢 凯 这就是我尝试过的 Option Explicit Sub Makro1 insert clipboard Workbooks Pfl SchutzSt
  • 二维数组作为字典的项目

    我想用一个项目的几个属性填充字典 例子 我正在考虑拥有Item 1 and Item 2 as Dictionary键与array这将保留其属性 我需要能够单独访问项目的每个属性 因此将它们连接为一个字符串不是一种选择 我正在考虑类似下面的
  • 从VBA中的数组批量插入到sql中

    我正在尝试在 Excel 中构建一个按钮 将所选区域上传到 SQL Server 中的表中 第一行将自动视为列标题 这件事该怎么继续下去呢 我想要的是简单和超快的上传 这是我的想法 我将选择选定的区域 然后将其保存为 txt 文件 然后对其
  • 如何VBA等待Windows保存对话框和发送密钥

    我正在创建一个宏文件 用于下载并保存从 SAP 旧版本 7 20 中提取的数据 当出现保存对话框时 未检测到 Windows 对话框 因为我的客户端 SAP 版本是旧版本 7 20 现在我对此的解决方案是发送密钥 但问题是某些数据包含大量数
  • 如何获取数据透视表的 ListObject 对象?

    这个问题最初是作为answer https stackoverflow com a 21321664 2712565作者 休 西格雷夫斯 Hugh Seagraves 关于相关问题的文章 他 想要引用一个工作表上的列表对象 表格 而另一工作
  • 为什么在 Excel for Mac 中使用 VBA 的输入框不显示提示文本?

    我一直在构建一个使用 Excel 跟踪学生成绩的系统 我在 Windows 下编写了它 一切正常 但是当我在 Mac 版本的 Excel 最新版 本 15 24 我相信 上测试它时 InputBoxes 只显示输入数据的标题和文本框 不显示
  • 使用 C# 在 Excel 中查找和替换文本

    我想使用 C 在 Excel 中查找并替换一组文本 而且我希望此替换仅发生在第一行中的文本 我已经使用Google并找到了一些付费资源 例如Aspose API Spire Xls等 但我正在寻找开源资源或任何其他有效的方法来实现这一目标
  • 从单元格中具有多种颜色的单元格中提取字体颜色

    我有一个 Excel 工作表 我正在尝试将其存入 MySQL 数据库 我使用 VBA 将数据作为文本写入文件 然后将其上传到数据库 在工作表的单元格中 有一些已用颜色编码的字符串 颜色具有一定的含义 因此当我将值移入数据库时 我想保留它们
  • 在适用于 Windows 和 Mac 的 VBA 中指定用户文件夹的路径

    我正在编写一个使用 VBA 从 Excel 生成文件的工具 生成的文件将写入用户的 Documents 文件夹中的文件夹 如果存在 e g C Users
  • 在 ASP.Net Core 2.0 中导出到 Excel

    我曾经使用下面的代码在 ASP NET MVC 中将数据导出到 Excel Response AppendHeader content disposition attachment filename ExportedHtml xls Res
  • 从新的 xlsx 文件中删除宏

    功能部分 下面的代码将 xlsm 文件中的 2 个选项卡保存到新的 xlsx 文件中 文件保持打开状态以进行编辑 错误 xlsm 选项卡在工作表代码中有触发器 该触发器无效 一旦在 xlsx 工作表中输入任何内容 就会导致错误 所需输出 编
  • Excel VSTO 加载项可以与 Excel 2007 和 2010 兼容吗?

    是否可以使用 VSTO 开发一个可部署到 Excel 2007 和 2010 的 Excel 加载项 任何有关此主题的详细资源的链接也将不胜感激 我似乎无法在谷歌上找到任何专门解决此问题的内容 我正在使用 Visual Studio 201

随机推荐

  • 为什么我的 UIView 没有随着 CGAffineTransformMakeScale 增长?

    我的目标是使视图大小增加一倍 我用我的代码得到的结果是 什么也没发生 视图会显示但不会增长 任何帮助 将不胜感激 Here s the H file Here s the custom method in the M file Here s
  • 为什么使用 http 而不是 https 打开网站时 chrome.runtime 未定义?

    我有一个非常简单的 html 文件 其中包含以下内容 我的页面 html p chrome runtime test p 当我在带有 http 的 Web 服务器中使用这个 html 文件时 chrome runtime 是未定义的 例子
  • 将 JS 与 rollup 和 Babel 捆绑在一起,用于 IE11

    我尝试捆绑两个 JavaScript 模块 以便生成的代码可以在 IE11 中运行 为此 我设置了一个yarn npm项目 它使用rollup js用于捆绑和Babel用于转译 一切正常 直到我添加 非开发 依赖项core js 这里是详细
  • Python 比 Java/C# 慢吗? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 Python 比 Java C 慢吗 性能比较 c java python ruby jython jruby groovy http blog
  • 伊莎贝尔和斯卡拉[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在考虑创建 Eclipse PDE 并且需要与 Isabelle 进行通信 我确实发现一些出版物声
  • 了解 Knuth Morris Pratt (KMP) 失效函数

    我一直在读关于 Knuth Morris Pratt 算法的维基百科文章 http en wikipedia org wiki Knuth E2 80 93Morris E2 80 93Pratt algorithm我对如何在跳转 部分匹配
  • 解析Java中的任何日期

    我知道这个问题被问了很多 显然你无法解析任何任意日期 然而 我发现 python dateutil 库能够解析我扔给它的每个日期 同时在找出日期格式字符串时需要绝对零的努力 Joda time 始终被认为是一个出色的 Java 日期解析器
  • 在scikit-learn中,DBSCAN可以使用稀疏矩阵吗?

    当我运行 scikit 的 dbscan 算法时 出现内存错误 我的数据约为20000 10000 它是一个二进制矩阵 也许这样的矩阵不适合使用DBSCAN 我是机器学习的初学者 我只是想找到一种不需要初始簇号的聚类方法 不管怎样 我发现了
  • MySQL 日期时间和时间戳字段是否比 Unix 时间戳整数更适合 PHP 应用程序?

    我正在阅读一篇文章 其中显示了一些非常好的信息和基准 关于三种不同的 MySQL 日期 时间存储选项的执行情况 MySQL DATETIME TIMESTAMP INT 性能以及使用 MyISAM 进行基准测试 http gpshumano
  • 是否有可能有一个利用 firebase 的 chrome 打包应用程序?

    我遇到了 CSP 问题 我尝试将 firebase 添加到权限和沙箱中 我正在尝试转换此 firebase 示例 chrome 扩展 https github com firebase firebase chrome extension h
  • 通过 css 的文本装饰线在 Safari 上无法使用我的“已完成”类工作

    我一直在多个设备上测试我的应用程序 刚刚发现我的 CSS 样式之一无法在 Safari 上运行 特别是我的 iPhone 和 iPad 我正在使用 Angular 制作一个待办事项应用程序 并且希望在项目标记为完成时用红线划掉文本 如果我创
  • 从最高到最低排名时处理平局

    我正在尝试为一个小项目制作一个排名管理器 总计存储在数据库中 我可以使用mysql轻松获取最大值和最小值 并按降序排列记录 当出现平局时就会出现问题 我需要以以下形式显示平局 1 2 3 3 4 5 6 7 7 7 7等 重复的数字将显示平
  • 如果密码正确,带有会话的 Codeigniter 登录系统会将用户重定向到页面

    我创建了一个登录系统 但每次设置 if 语句时 当我输入正确的密码时 它都会循环回到登录页面 我需要控制器中的索引函数 list employee 函数和 View employee 函数来将用户重定向到登录页面 如果他们直接访问 但如果他
  • 如何在 Ruby 中继承抽象单元测试?

    我有两个单元测试 它们应该共享许多常见的测试 但设置方法略有不同 如果我写类似的东西 class Abstract lt Test Unit TestCase def setup field create end def test 1 en
  • 禁用 Android 中的后退按钮

    如何在注销应用程序时禁用 Android 中的后退按钮 如果您打算处理设备上的后退按钮 请重写 onBackPressed 方法并且不执行任何操作 Override public void onBackPressed if shouldAl
  • 仅适用于希伯来语字符的 ng-pattern

    我想用ng pattern验证我的文本输入字段应该只接受希伯来语字符 有时输入没问题 有时由于某种原因被拒绝 第一个字母是验证 第二个字母不是 等等 例子
  • 如何将 ECDSA 密钥转换为 PEM 格式

    我有一个私人原始密钥米以太钱包 with a 密码短语 testwallet 现在我尝试按照此答案使用 OpenSSL 将其转换为 PEM 格式 echo a140bd507a57360e2fa503298c035854f0dcb248be
  • 更改 jupyter 笔记本标签小部件中的字体属性

    我正在尝试修改 python 2 7 中 jupyter 标签小部件的字体属性 粗细 颜色等 作为一个例子 我尝试过以下方法 import ipywidgets as widgets myLabel widgets Label value
  • 调整放置在 byte[] 数组中的图像大小

    放置在 byte 数组中的图像大小 不知道图像的类型 我必须生成另一个 byte 数组 其大小应达到 50kB 我怎样才能进行某种缩放 除非您想进行一些严肃的数学运算 否则您需要将字节数组加载到内存流中 从该内存流加载图像 并使用 Syst
  • Excel公式:如何按大写字母拆分字符串

    使用公式而不是VBA 我想提出一个解决方案来分割由多个单词组成的字符串 该公式应该识别有大写字母的单词并将它们分开 结果将是一个字符串 其中单词之间用 分隔 为了澄清这一点 我们举一个字符串的例子 Nursing StudentStuden