首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用VBA在Excel中根据关键字对文本字符串进行分类?

在Excel中使用VBA根据关键字对文本字符串进行分类的方法如下:

  1. 打开Excel并创建一个新的工作表。
  2. 在第一列中输入要分类的文本字符串。
  3. 在第二列中输入关键字列表,每个关键字占一行。
  4. 在VBA编辑器中打开该工作表的代码窗口(按下Alt + F11,选择工作表,然后右键单击并选择“查看代码”)。
  5. 在代码窗口中输入以下VBA代码:
代码语言:txt
复制
Sub CategorizeStrings()
    Dim rngStrings As Range
    Dim rngKeywords As Range
    Dim cellString As Range
    Dim cellKeyword As Range
    Dim category As String
    
    ' 设置要分类的文本字符串范围
    Set rngStrings = Range("A2:A" & Cells(Rows.Count, 1).End(xlUp).Row)
    
    ' 设置关键字列表范围
    Set rngKeywords = Range("B2:B" & Cells(Rows.Count, 2).End(xlUp).Row)
    
    ' 循环遍历每个文本字符串
    For Each cellString In rngStrings
        ' 重置分类
        category = ""
        
        ' 循环遍历每个关键字
        For Each cellKeyword In rngKeywords
            ' 检查文本字符串是否包含关键字
            If InStr(1, cellString.Value, cellKeyword.Value, vbTextCompare) > 0 Then
                ' 设置分类为关键字
                category = cellKeyword.Value
                Exit For
            End If
        Next cellKeyword
        
        ' 将分类结果写入下一列
        cellString.Offset(0, 1).Value = category
    Next cellString
End Sub
  1. 关闭VBA编辑器。
  2. 运行宏:按下Alt + F8,选择“CategorizeStrings”,然后点击“运行”。

此VBA代码将根据关键字列表中的关键字,对文本字符串进行分类,并将分类结果写入原始文本字符串的相邻单元格中。

对于云计算领域的专家,可以使用腾讯云的云服务器(ECS)来运行Excel文件,使用云数据库(CDB)存储数据,并使用云函数(SCF)来自动化执行VBA代码。腾讯云的相关产品和介绍链接如下:

  • 云服务器(ECS):提供可扩展的计算能力,用于运行Excel文件。详细信息请参考:腾讯云云服务器
  • 云数据库(CDB):提供高性能、可扩展的数据库服务,用于存储数据。详细信息请参考:腾讯云云数据库
  • 云函数(SCF):无服务器计算服务,可用于自动化执行VBA代码。详细信息请参考:腾讯云云函数

请注意,以上仅为示例,其他云计算品牌商也提供类似的产品和服务。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

VBA其他库对象

Excel VBA对象模型里,我们说到了Excel VBA的专有对象,在前面几乎都是使用Excel VBA的专有对象,主要是因为我们操作处理的是Excel,其实VBA语言还有一些通用的对象(通用指的是比如在...word里也有,在其他一些用VBA语言的应用程序都有的对象),这些对象Excel VBA里用的还是比较多的,比如字符串对象那些功能,在用VBA实现Excel函数03:SUMIF已经使用过了。...最后那个其实就是你打开的Excel的工程名称,可以看到除了Excel之外,还有Office、stdole、VBA,这几个其实对应的就是我们VBE编辑器里,点击工具-引用出来的那个界面里勾选了的项目:...点击下面的Strings,可以看到前面用过的Left、Len等,里面还有很多其他的对字符串处理的常用功能,所以,如果你想对字符串进行一个处理,又不知道有没有这个功能,你可以写代码的时候输入Strings...点击下面的FileSystem,可以看到对象Workbook Worksheet Range的使用使用过的MkDir,里面的就是一些常用的对文件的操作,像我们平时用鼠标操作的复制、粘贴、删除文件等。

1.2K20

Excel: 提取路径的文件名

文章背景:日常工作,有时需要从绝对路径中提取文件名。比如,已知某个文件的存储路径,想要获取最后的文件名称。下面介绍两种方法。...A2的公式,SUBSTITUTE函数将字符串的斜杆\替换成99个空格。...思路分析:针对文件路径,先用99个空格替换掉路径的斜杆\;再从字符串右侧起,获取99个字符(新字符串),此时,新字符串内既有文件名,也有空格;最后,通过trim函数,移除首尾的空格,从而得到所需要的文件名...思路分析:针对文件路径,使用Split函数,基于斜杆/,将路径分割成各个小块,保存在一个数组内;然后通过Ubound函数,获取数组的最后一个索引号,从而将文件名提取出来。...参考资料: [1] 如何excel提取路径中最后一个文件夹的名字(https://jingyan.baidu.com/article/a948d651aae9544a2ccd2e74.html) [2

2.3K20

Excel数据分析:从入门到精通

1.2 Excel数据分析的基础知识 开始使用Excel进行数据分析之前,你需要了解一些基本概念和操作技巧。...你需要了解如何使用公式和函数,以及一些常用的函数,如SUM、AVERAGE、COUNTIF等等。...1.3 Excel数据分析的基本操作 掌握了基础知识后,你可以开始进行Excel数据分析的基本操作,包括: 数据输入:将数据输入到Excel表格,并设置单元格格式和数据类型。...2.3 条件格式化 条件格式化是一种Excel对数据进行可视化处理的方法。通过设置不同的条件格式,你可以根据数据的大小、颜色、图标等属性来呈现不同的样式。...例如,你可以使用文本函数来对文进行格式化和提取,使用筛选和删除重复项功能来清理数据,使用合并单元格和拆分列功能来处理数据格式等等。

3K50

简单的Excel VBA编程问题解答——完美Excel第183周小结

15.如何指定函数要返回的值? 通过将值赋给函数名称。 16.过程的局部变量能否调用过程之间“记住”其值?如果要这样,怎么办? 能够,通过使用Static关键字声明变量。...17.VBA可以识别通用格式的日期,例如2020/11/11。VBA代码如何表明该值是日期? 通过将其括#字符。 18.哪个VBA函数用于为日期添加间隔? DateAdd函数。...19.哪两个函数用于搜索文本(另一个字符串查找一个字符串)? InStr函数和InStrRev函数。 20.如何转换字符串,以使每个单词的首字母大写,而所有其他字母小写?...22.如何字符串开头提取一定数量的字符? 使用Left函数。 23.VBA程序中使用哪个Excel对象引用的工作表单元格区域? Range对象。...完美Excel微信公众号本周内容 完美Excel公众号,本周推出的内容清单如下: 一些基本的Excel VBA编程问题,答案来了 Excel小技巧66:快速求和 Excel实战技巧92:快速获取指定目录下所有文件清单

6.6K20

第一个程序

程序员学习程序开发都喜欢以输出“hello world”为第一个程序,我们也学习一下这种模式,因为Excel VBA主要是操作Excel,所以我们的第一个程序目的:A1单元格输入“hello Excel...4、对象:上面只是一个框架,并没有实际可执行的语句,我们的目的A1单元格输入“hello Excel VBA”。...对象:我们要对什么进行操作,比如生活我们要拿起水杯,水杯就是一种对象。我们读一书,书也就是我们操作的对象。 Excel VBA里,有很多的对象,最先接触到的应该就是这种单元格对象。...5、属性:我们的目的A1单元格输入“hello Excel VBA”。...比如生活水杯里有多少毫升的水,书有多少页,就是对象所具体有的那些东西。 6、赋值:有了对象、有了属性,那我们就对这个属性进行赋值就可以了,对象与属性之间用”."

1.5K20

《Python for Excel》读书笔记连载2:为什么为Excel选择Python?(续)

本节,将介绍Python的核心概念,并将它们与ExcelVBA进行比较。涉及代码可读性、Python的标准库和包管理器、科学计算堆栈、现代语言功能以及跨平台兼容性。...Python依赖缩进来定义代码块,就像您在if语句或for循环中使用代码块一样。大多数其他语言使用大括号代替缩进,VBA使用诸如EndIf之类的关键字,正如我们刚才代码段中看到的那样。...然而,这并不意味着VBA不再受支持:Microsoft每一个新版本的Excel中都会提供更新,以便能够自动化该版本引入的新Excel功能。...如果你希望VBA优雅地处理错误,它是这样的: Sub PrintReciprocal(number As Variant) '如果number是0或字符串,则会产生错误 On Error...事实上,在下一章,我将通过介绍托管的Jupyter笔记,向你介绍如何在服务器上运行Python代码。绝大多数服务器都运行在Linux上,因为它是一个稳定、安全且经济高效的操作系统。

2.5K10

字符串处理的通配符

匹配单个字符 1、Excel通配符的使用: 通配符Excel也有很多地方能够用上,比如Vlookup、Match、Sumif函数等: ?...,就只会替换掉括号含2个字符的。 2、VBA通配符的使用VBA通配符还有1种#,能够代表1个数字。...VBA使用通配符比较简单,比如我们想判断某个字符开头是否是“Str",这个用Left函数也是可以的: If VBA.Strings.Left(str, 3) = "Str" Then...'其他代码 End If 使用通配符: If str Like "Str*" Then '其他代码 End If Like关键字用于比较两个字符串,和我们平时用=进行比较不同的是...##*xy" '立即窗口输入后回车 使用通配符可以简化代码,提高字符串对比的灵活性。 3、小结 了解VBA通配符的使用,对于经常有字符处理需要的,熟练掌握通配符的使用非常的有必要。

2.1K30

Jupyter Notebooks嵌入Excel使用Python替代VBA

如何使用 现在,你已经Excel运行了完整的Jupyter笔记!但是,这有什么好处呢?这比Excel外部运行笔记更好?...本文的其余部分,我将向你展示如何: 使用Jupyter笔记Excel和Python之间共享数据 笔记上写Excel工作表函数(udf) 脚本Excel与Python代替VBAExcel获取数据到...Excel使用Python而不是VBA的脚本 你是否知道VBA可以执行的所有操作也可以Python完成?编写VBA时将使用Excel对象模型,但是Python也提供相同的API。...Excel运行的Jupyter笔记,可以使用整个Excel对象模型,因此你可以使用Excel VBA编辑器完全相同的方式编写Excel脚本。...尝试进行诸如获取当前选择和更改单元格内部颜色之类的操作。弄清楚如何使用Excel对象模型进行操作的一种好方法是记录VBA宏,然后将该宏转换为Python!

6.3K20

【文末赠书】个人永久性免费-Excel催化剂功能第121波-文件处理新增base64转码及导出文本文件

日常办公环境下,大量的场景需要对文进行处理,而当下流行的无论是BS网页架构还是手机APP移动办公,对本地文件处理都是非常薄弱的。...Excel催化剂过往的功能,也大量地现存各种文件类操作的功能,但需求太多,本篇再次对文件相关的功能增强:base64转码及文本导出功能。...历史过往功能回顾 Excel催化剂现存在100+功能,零散分布了大量的文件类操作,Excel催化剂倡导的搜索+笔记的方式下使用插件,无需死记硬背,真正到使用时,对功能文档及功能菜单进行搜索即可。...传送门:第88波-批量提取pdf文件信息(图片、表格、文本等) 追加新功能 除以上的功能,笔者程序开发及工作过程,又新增了一些需求,索性也开发出来通用性,放到Excel催化剂,供特定场景下的用户使用... 如果需要批量操作,那就用得上下面的新开发的功能,导出单元格的字符串数据至文本文件,灵活使用Excel

1.4K10

EXCEL必备工具箱17.0免费版

(2021.02.13) EXCEL必备工具箱,数字与汉字互转功能,可以根据需要,将字符串的1234567890和一二三四五六七八九零相互转换(2021.02.13) EXCEL必备工具箱,批量读取图片信息功能...EXCEL必备工具箱--比较字符串相似度功能,能够忽略大小写进行比较 EXCEL必备工具箱--批量生成文件夹功能,根据选定的单元格区域,批量生成文件夹EXCEL必备工具箱--读取图片名称功能,将选定区域的图片图片名称读出...--使用各种邮箱分发邮件Excel必备工具箱--批量去除保护的视图、断开外部链接,通过功能批量去除受保护的视图。...EXCEL必备工具箱--跨表提取行功能,帮你从相同格式的多张表格中提取关键字一样的行到一个表 EXCEL必备工具箱--强制读取VBA代码,绕过EXCEL安全机制,无论采用何种保护措施,都可以直接读出VBA...--分类汇总功能,按共同关键字对一个或多个表格进行分列汇总 EXCEL必备工具箱--按共同列合并两表功能 EXCEL必备工具箱--去除两表共同行功能 EXCEL必备工具箱--提取两表共同行功能 EXCEL

5.1K40

过程(二)Sub过程的定义和调用

大家好,上节主要介绍了VBA过程的定义和分类,本节主要介绍Sub过程的定义和调用。...,在过程编写相应的代码,这里不多介绍,另一种则是我们习惯使用模块中直接输入代码来定义过程。...Static属性对sub之外声明的变量不会产生影响,即使过程中使用了这些变量。 定义Sub过程时可以根据需要选择关键字,省略状态时为Public。...VBA中经常通过调用定义好的过程来执行程序,Sub过程的调用分两种方式,一种是VBA调用Sub过程,另一种是Excel以调用宏的方式, 1、使用VBA代码调用sub过程 程序调用sub过程又两种方式...---- 本节主要介绍Sub过程的定义和调用,重点是Sub过程的关键字和注意点。下一节会介绍过程如何传递参数。祝大家学习快乐。 ----

4.9K20

数据分析经典图书大全,专治各种不懂!

1.2《一书学会做数据分析》 作者:李宗民 简介:本书结合具体的商务实例对Excel软件和数据分析进行了详细介绍,分析实例的同时,还穿插了小知识、小技巧等内容,以帮助读者全面了解Excel的主要功能...3.3《SPSS统计分析方法及应用》 作者:薛薇 简介:全书以统计分析的应用需求为主线,以通俗易懂的语言对SPSS的主要统计分析方法的核心思想进行系统的介绍,并对其SPSS的操作实现步骤进行详尽说明...本书克服SPSS手册类教材只注重操作说明而忽略原理讲解的不足,同时弥补了统计专业教材只注重原理述论而缺乏实现工具的缺憾,是一特色鲜明、具有广泛使用价值的精品教材。...4.3《SAS编程与数据挖掘商业案例》 作者:姚志勇 编著 简介:本书是作者多年来企业实践工作的经验总结,详细讲解了使用SAS进行商业数据挖掘的方法,其中包含了目前公开出版的诸多SAS教材没有的大量实战内容...他们共同展示了可视化所能实现的功能以及如何使用它来改变世界。《数据可视化之美》,你将: 通过简单的可视化实践探索讲故事的重要性。 了解颜色如何传达我们尚未充分意识到而大脑已经识别出的信息。

2.1K80

Excel公式技巧49: 提取文件名

学习Excel技术,关注微信公众号: excelperfect 工作表中有一系列完整文件路径清单,现在要提取其中的文件名称,由于文件夹可能还有子文件夹,因此文件路径长短不同,而我们必须找出其最后一个...“\”的位置,才能实现对文件名的提取。...然而,Excel没有像VBA一样的InstrRev函数,可以实现从右向左的查找。这样,我们可以自定义一个这样的函数,Excel工作表中使用,我们也可以使用一些函数技巧来实现这样的目的。...Excel公式技巧47:MID函数的妙用》,我们发现可以使用任意顺序的数组来提取字符串中指定位置的字符;Excel公式技巧48:生成从大到小连续的整数》,介绍了如何倒序生成连续整数的技巧。...然后,使用字符串总长度减去上面的结果,可以得到从左向右数最后一个“\”的位置: =LEN(A1)-B1+1 结果为: 8 再使用MID函数获取文件/文件夹名: =MID(A1,C1+1,LEN(A1))

1.7K20

『对比Excel,轻松学习Python数据分析』新书发布

2.Python可以轻松实现自动化 你可能会说ExcelVBA也可以自动化,但是VBA主要还是基于Excel内部的 自动化,一些其他方面的自动化VBA 就做不了,比如你要针对本地某一文件夹下面的文件名进行批量修改...3.Python可用来做算法模型 虽然你是做数据分析的,但是一些基础的算法模型还是有必要掌握的,Python可以让你在懂一些基础的算法原理的情况下就能搭建一些模型,比如你可以使用聚类算法搭建一个模型去对用户进行分类...对于同一个功能,本书告诉你Excel怎么做,并告诉你对应到Python是什么样的代码。...,这些操作用Excel如何实现,用Python又如何实现;进阶篇:介绍几个实战案例,让你体会一下实际业务如何使用Python。...数据透视表不管是Excel还是Python中都是一个很重要的功能,大家都需要熟练掌握。 Excel实现 Excel的数据透视表插入菜单栏,选择插入透视表以后就会看到下图的界面。

3.3K50

过程(六)Function函数过程

2、Sub过程可以作为宏来调用,而Function函数过程不会出现在调用宏时选择宏的对话框,要在工作表调用Function函数,可像使用Excel内部函数一样使用。...2、函数过程内,通过给函数名赋值来返回计算结果。如果函数结构没有函数名=表达式1的语句,则该函数使用时会返回一个默认值,数值函数返回值为0,字符串函数返回值为空字符串。...三、调用Function函数 有两种方法调用Function函数,一种是工作表的公式中使用,即像普通Excel函数一样使用。另一种是从VBA的另一个过程里调用。...1、工作表调用函数 定义的Function函数和系统内置函数一样,可以再Excel工作表作为公式进行引用。(即和常用的sum函数、if函数、vlookup函数等一样去使用。...(特别是工作中一些数据的固定处理,就可以使用自定义的函数。) 2、VBA代码调用函数 vba,function函数过程无法像Sub过程那样按F5来调试运行。

2K20

数据分析常用工具

Excel 常用操作有函数、可视化、数据透视表、VBA。...注:黄成明老师的《数据化管理》的部分内容涉及如何Excel建立业务运营工具。...; 左手数据,右手图表,徐军泰; 点评:该书主要讲动态图,也就是可以有交互操作的图表,第一份工作的时候参考此书做了一个半自动化的Excel监控模板,受益颇多; 别怕,Excel VBA其实很简单,Excel...窗口函数,即对一组值进行操作(不需要使用到group by),常见的函数有(此处以Hive举例): 计算:countsumavgmaxmin over; 分区:partition by; 位置:lag,...Downey; 官方文档,包括其他常用数据分析module的官方文档(很多教程就是根据官方文档改编过来的); R R语言实战,Robert I.

2.4K90

VBA实战技巧05: 动态调整数组以存储所需数据

学习Excel技术,关注微信公众号: excelperfect 数组是一种常用的数据结构,可用来存储一组相同类型的数据,你可以将一个数组变量视为一个迷你的电子表格,通过引用数组的位置来存储或者获取数据...如果你想详细学习数组的相关知识,可参阅相关文章: Excel VBA解读|进阶篇(152):数据结构——谈谈数组 Excel VBA解读|进阶篇(153):数据结构——基本的数组操作 Excel VBA...解读|进阶篇(154):数据结构——数组常用操作示例代码 Excel VBA解读|进阶篇(155):数据结构——数组相关的函数 VBA进阶|数组基础01:用最浅显的介绍来帮你认识数组 VBA进阶|数组基础...如果调整数组大小的同时,想要保留之前存储在数组的数据,则需要使用Preserve关键字,告诉VBA增加数组存储容量时,保留原来存储在数组的数据。...'确定要存储的数据 Set rngData =ActiveSheet.Range("C1:C100") '遍历单元格区域并以指定的分隔符连接数值 '并将其存储字符串

3.4K20
领券