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

如何在VBA excel中每隔n个字符拆分字符串?

在VBA Excel中,可以使用Mid函数和For循环来实现每隔n个字符拆分字符串的操作。

具体步骤如下:

  1. 首先,声明一个字符串变量来存储原始字符串和拆分后的字符串。
  2. 使用InputBox函数获取用户输入的原始字符串。
  3. 使用InputBox函数获取用户输入的n值,即每隔n个字符进行拆分。
  4. 使用Len函数获取原始字符串的长度。
  5. 使用For循环遍历原始字符串,每隔n个字符进行拆分。
  6. 在循环中,使用Mid函数截取每隔n个字符的子字符串,并将其添加到拆分后的字符串变量中。
  7. 循环结束后,输出拆分后的字符串。

以下是一个示例代码:

代码语言:txt
复制
Sub SplitString()
    Dim originalString As String
    Dim splitString As String
    Dim n As Integer
    Dim i As Integer
    
    originalString = InputBox("请输入原始字符串:")
    n = InputBox("请输入每隔n个字符进行拆分:")
    
    For i = 1 To Len(originalString) Step n
        splitString = splitString & Mid(originalString, i, n) & " "
    Next i
    
    MsgBox "拆分后的字符串为:" & splitString
End Sub

这段代码会弹出两个输入框,分别用于输入原始字符串和n值。然后,通过For循环和Mid函数,将每隔n个字符的子字符串拆分并存储在splitString变量中。最后,使用MsgBox函数输出拆分后的字符串。

这是一个简单的示例,你可以根据实际需求进行修改和扩展。在实际应用中,你可以根据需要将拆分后的字符串存储到数组、单元格或其他数据结构中,以便进一步处理和使用。

腾讯云相关产品和产品介绍链接地址:

  • 云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 云数据库 MySQL 版:https://cloud.tencent.com/product/cdb_mysql
  • 云原生容器服务(TKE):https://cloud.tencent.com/product/tke
  • 人工智能平台(AI Lab):https://cloud.tencent.com/product/ailab
  • 物联网开发平台(IoT Explorer):https://cloud.tencent.com/product/iotexplorer
  • 移动推送服务(信鸽):https://cloud.tencent.com/product/tpns
  • 对象存储(COS):https://cloud.tencent.com/product/cos
  • 区块链服务(TBC):https://cloud.tencent.com/product/tbc
  • 腾讯云元宇宙:https://cloud.tencent.com/solution/virtual-universe
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

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

VBA代码,如何表明该值是日期? 通过将其括在#字符。 18.哪个VBA函数用于为日期添加间隔? DateAdd函数。 19.哪两个函数用于搜索文本(在另一个字符串查找一个字符串)?...22.如何从字符串开头提取一定数量的字符? 使用Left函数。 23.在VBA程序中使用哪个Excel对象引用的工作表单元格区域? Range对象。...Range对象的Value属性返回一个空字符串。 25.Worksheet对象的UsedRange属性引用什么? 包含工作表中所有已使用单元格的最小单元格区域。 26.如何在单元格添加批注?...完美Excel微信公众号本周内容 在完美Excel公众号,本周推出的内容清单如下: 一些基本的Excel VBA编程问题,答案来了 Excel小技巧66:快速求和 Excel实战技巧92:快速获取指定目录下所有文件清单...简单的Excel VBA编程问题又来了,你能答出来吗?

6.6K20
  • 字符串处理的通配符

    匹配单个字符 1、Excel通配符的使用: 通配符在Excel也有很多地方能够用上,比如Vlookup、Match、Sumif函数等: ?...,就只会替换掉括号含2个字符的。 2、VBA通配符的使用: 在VBA通配符还有1种#,能够代表1个数字。...在VBA中使用通配符比较简单,比如我们想判断某个字符开头是否是“Str",这个用Left函数也是可以的: If VBA.Strings.Left(str, 3) = "Str" Then...前面举的例子非常的简单,我们用Left函数一样能够做到,但是,通配符能够完成比较复杂的对比,比如,需要判断1个字符串: 第3-5个字符是abc、第9-10个字符是数字、结尾是xy。...##*xy" '立即窗口输入后回车 使用通配符可以简化代码,提高字符串对比的灵活性。 3、小结 了解VBA通配符的使用,对于经常有字符处理需要的,熟练掌握通配符的使用非常的有必要。

    2.1K30

    VBA专题10-16:使用VBA操控Excel界面之在功能区添加自定义复选框控件

    excelperfect 在本专题前面的一系列文章,我们已经讲解了如何在功能区添加自定义的按钮控件、切换按钮控件、拆分按钮控件、组合框控件、下拉控件、库控件、标签控件,添加自定义控件的步骤相同,都是先编写...XML代码在工作表界面添加控件,然后编写VBA代码实现相应的功能。...本文继续介绍如何在功能区添加自定义复选框控件。...在标准VBA模块的代码如下: 'Callback for checkBox1onAction Sub Checkbox1_change(control As IRibbonControl, pressed...说明:本专题系列大部分内容学习整理自《Dissect and Learn Excel VBA in 24 Hours:Changing workbook appearance》,仅供学习研究。

    1.5K00

    合并拆分 Excel?Python、VBA轻松自动化

    当你收集了 n 个人的 EXCEL 记录表,需要将它们汇成一个总表时你会怎么做呢? 如果不通过技术手段,要一个个打开再复制粘贴也太麻烦了吧! 此时就需要一个通过几秒钟的点击就能完成合并的工具。 ?...最终成品 合并 EXCEL VBA 实现合并 不套路,下面直接放出 VBA 代码(来源于网络,经过了我修改): Sub 合并当前目录下所有工作簿的全部工作表() Dim MyPath, MyName,...如下目录中放着 3 个待合并的 EXCEL 表,每个表数据不同; ? 新建一个 EXCEL 文件后打开它,用于存放合并后的数据; ? 通过快捷键 Alt + F11 打开 VBA 界面; ?...即将同目录下其他 3 个 EXCEL 文件的数据合并至此; ? 办公自动化有着各种各样的手段,下面让我们来看看万能的 Python 又是如何实现这个功能的。...如下图所示,将一个表的 15 个任务拆分到了 3 个新的表 ? ?

    2.3K20

    Excel公式练习90:返回字符串第一块数字之后的所有内容(续3)

    引言:在《Excel公式练习87:返回字符串第一块数字之后的所有内容》、《Excel公式练习88:返回字符串第一块数字之后的所有内容(续1)》和《Excel公式练习89:返回字符串第一块数字之后的所有内容...本次的练习是:如下图1所示,使用公式拆分列A字符串,从中返回列B字符串。...图1 你的公式应该处理任意长度的字符串和任意长度的数字——不仅仅是图1所显示的长度。此外,不应该使用任何辅助单元格、中间公式或命名区域,或者VBA。 如何使用公式获得结果?...新数组的两列几乎相同,只是其中一列的所有元素都是一个字符长,而另一列的所有元素都是两个字符长。 如果在工作表单元格区域中输入,则如下图2所示。...我们需要该参数的数字足够大,以便涵盖所有可能的子字符串长度。使用LEN(A1),公式需要7个字符,而6^6只要三个字符

    1.3K10

    个人永久性免费-Excel催化剂功能第43波-文本处理类函数增强

    也只是醉了,这样的功能,随便一个VBA学习者都能写得出来。...文本提取替换函数清单 StringJoin函数 对标原生Excel2016提供的TEXTJOIN函数 特别加上最后一个参数,可以包围每个拼接的字符串项,在写SQL语句时的IN条件时,经常会用到单引号包围着字符串项的效果...StringJoinIf函数参数 TextSplit 前面是拼接字符串,此函数相反是拆分字符串,TextSplit返回一个值,返回的值由最后参数控制, TextSplits返回所有值,返回结果可按行或按列排列...只要出现过这一个字即可,多个一个字时可排列组合出多个匹配结果,A,B,C三个单个的字符,可以匹配A/AB、AC、ABC、ACB、B、BC、BA、BAC、BCA、C、CA、CB、CAB、CBA等结果 多个字符一起时...,如下图中的“美国” 仅匹配此多个字符的完整匹配,ABC,BC的MatchString,仅对源文本的ABC和BC两项匹配。

    1.3K30

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

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

    3.6K20

    Workbook工作簿对象方法(一)

    代码为workbook.add [Template] 1、参数可省略,add方法不加参数时,excel创建新的空工作簿,自动将工作簿命名为“BookN”,其中N为顺次的数字,(可以通过application...2、参数的字符串如果指定的是已有的excel文件,那么新建文件会以该excel文件为模板创建新工作簿。新工作簿名在模板工作簿名的后面加有规律的数字。...Sub test() Workbooks.Open Filename:="D:\VBA示例.xlsm" End Sub 代码filename参数后用 := ,加excel完整路径,路径需要用英文引号。...Sub 代码,首先定义wb1为工作簿变量,fn1为字符串变量。...1、参数FileName必需,指定一个字符串,代表要打开的工作簿文件名。 2、参数UpdateLinks可选,指定文件中外部引用(链接)的方式。如果忽略该参数,那么将提示用户指定如何更新链接。

    6.2K40

    Python对比VBA实现excel表格合并与拆分

    日常工作中经常需要对一系列的表进行合并,或者对一份数据按照某个分类进行拆分,今天我们介绍Python和VBA两种实现方案供大家参考~ 1.Excel表格合并     1.1.Python实现表格合并     ...1.2.VBA实现表格合并 2.Excel表格拆分     2.1.Python实现表格拆分     2.2.VBA实现表格拆分 1.Excel表格合并 我们在日常工作中经常会导出一些数据,但是这些数据较大可能是按照某个分类形成的单独表格...import pandas as pd print(path) F:\微信公众号\表格合并与拆分\测试数据\vivo.xlsx # 读取某个文件,并预览数据 df = pd.read_excel(...VBA实现表格合并 VBA实现表格合并的核心思想 遍历全部表格,然后将每个表格数据复制到汇总表,每次在复制的时候从第一个为空的行开始 遍历用 Dir FileName = Dir(ThisWorkbook.Path...思考题: 如何在原有《汇总数据表》中新建新的页签用于存放拆分数据(可以参考《实践应用|PyQt5制作雪球网股票数据爬虫工具》7.2财务数据处理并导出) 2.2.VBA实现表格拆分 VBA实现表格拆分的逻辑是

    3K31

    最完整的VBA字符串知识介绍

    标签:VBA专题 引言:本文学习整理自functionx.com,可能是我见过的最完整的VBA字符串相关知识介绍,有兴趣的朋友可以参阅。 字符串简介 字符串是一个或多个字符的组合。...要将字符、字符串或表达式转换为大写,可以调用VBA的UCase函数或Microsoft Excel的UPPER函数,这些函数接受一个参数作为要考虑的字符串或表达式。...字符串的左子字符串 如果有一个现有字符串,但希望使用字符串左侧字符的多个字符创建一个新字符串,则可以使用Microsoft Excel 的LEFT函数或VBA的Left函数。...图5 字符串的右子字符串 要使用现有字符串右侧的一个或多个字符创建新字符串,调用MicrosoftExcel的RIGHT函数或VBA的Right函数。...String2参数是要查找的字符或子字符串。如果在String1找到String2(作为String1的一部分),函数将返回第一个字符的位置。

    2.7K20

    VBA程序的运算符

    大家好,本节将详细介绍VBA的运算符,它们是VBA的连接桥梁。 常用的运算符大部分是数学课本中学过的内容,但它们是VBA运算的基础,所以本节将作汇总介绍。...like比较两个字符串是否匹配。like的语法写法时字符串1 like 字符串2,当字符串1和字符串2匹配时,就返回true,否则返回false。...like在应用中常结合通配符使用(excel函数也涉及类似的的内容)下面说一下通配符的相关内容: *代替任意多个字符“特朗普” like “*朗*” =true ?...代替任意一个字符“特朗普” like “特??"...=true #代替任意一个数字,“商品2" like "商品#"=true [charlist]字符列表,表示代替位于charlist字符列表的任意一个字符 ,例如”I“ like ”[A-Z]"=

    1.5K30

    简谈VBA的Split函数

    标签:VBA,Split函数 Excel VBA提供了一种自定义的方式来拆分单元格的文本,即Split函数,这在需要将单元格的内容拆分为许多部分时非常有用。...Split函数的语法如下: Split(string,delimiter,limit,compare) 其中, 参数string,想要拆分字符串。 参数delimiter,将字符串分成段的字符。...参数limit,默认值为-1,意味着每个分隔符都将进行拆分。 参数compare,告诉Excel是执行二进制比较还是文本比较。零(0)用于执行二进制比较(这是默认值)。数字一(1)用于执行文本比较。...End If Next i Range(Cells(1, 1), Cells(1, UBound(var, 2))) = var End Sub 运行上述过程后,将在单元格区域A1:D1输入拆分后的字符串...如果想在单元格区域A1:A4输入拆分后的字符串,可以使用语句: Range(“A1:A” & UBound(var,2))=Application.Transpose(var)

    3K50

    Excel公式练习89:返回字符串第一块数字之后的所有内容(续2)

    引言:在《Excel公式练习87:返回字符串第一块数字之后的所有内容》和《Excel公式练习88:返回字符串第一块数字之后的所有内容(续1)》,我们分别给出了解决这个问题的两个公式,本文中,再次尝试着使用另一个公式来解决这个问题...本次的练习是:如下图1所示,使用公式拆分列A字符串,从中返回列B字符串。...图1 你的公式应该处理任意长度的字符串和任意长度的数字——不仅仅是图1所显示的长度。此外,不应该使用任何辅助单元格、中间公式或命名区域,或者VBA。 如何使用公式获得结果?...";7;22;9}) 返回: 8 因此,已经计算出第一组数字的开始位置是第8个字符,这意味着可以完全忽略出现在这个位置之前的任何文本。...SEARCH(CHAR(ROW(65:90)),A2,8) 解析为: SEARCH({“A”;”B”;”C”;”D”;”E”;”F”;”G”;”H”;”I”;”J”;”K”;”L”;”M”;”N”;”O

    2.1K20

    示例详解VBA的Split函数

    标签:VBA,Split函数 使用VBA时,有可能需要根据分隔符将字符串拆分为不同的部分。此时,就可以使用VBA的Split函数。...Split函数是ExcelVBA的内置字符串函数,可用于根据分隔符拆分文本字符串。...图1 在本示例,只指定了第一个参数,即要拆分的文本。由于未指定分隔符,因此将空格字符作为默认分隔符。 注意:VBA Split函数返回索引基于0开始的数组。...可以使用类似的代码在VBA创建一个自定义函数,该函数将文本作为输入并返回单词数。...图6 示例5:获取文本中指定的字符串 使用VBA的Split函数,可以指定要使用结果数组的哪个部分。 下面是一个自定义函数的代码,可以在其中指定一个数字,它将从数组返回该元素。

    7.3K20

    字符串操作

    Excel,我们除了需要处理大量的数字,字符串也是经常要处理的。 在VBA其他库对象里,我们已经提到了字符串处理的对象库Strings: ?...(str, 3) '从右边截取3个字符,输出ngs Debug.Print Strings.Mid(str, 3, 3) '从第3个字符开始截取3个字符,输出rin End Sub 2、字符转换...arr(1) = "bS" arr(2) = "cSr" arr(3) = "dStr" tmp = Strings.Filter(arr, "Str") '筛选数组包含...aStr '1 dStr Next End Sub 4、其他 Len 返回字符串的长度 InStr 判断某个字符串是否包含在另外1...个字符串 Replace 替换某个字符串为另外1个字符串 Format 格式化数据为字符串,这个和Excel函数Text很像 ……………… 字符串处理函数在Excel VBA中使用频率非常的高

    95730

    VBA代码库09:增强的CELL函数和INFO函数

    Excel研究\06.2 VBA代码库\09\ 详细内容参见:Excel函数学习27:INFO函数 CELL函数回顾 CELL函数的语法如下: CELL(info_type,[reference]) 其中...Excel研究\06.2 VBA代码库\09\[VBACodeLibrary09.xlsm]Sheet1 下面的公式来拆分出工作簿路径、工作簿名称和工作表名称。...或 "help" 返回This的文本列表 ' This = 上面没有列出的任意字符串返回Environ(This) ' 如果Target为空(默认), 则Target被设置为引用此函数的单元格(如果在VBA...A1)或VBA单元格区域Range("A1") ' 仿照Excel内置信息函数CELL和INFO ' 开发:wellsr.com Public FunctionNameOf(Optional ByVal...如果在VBA中使用NameOf函数,那么参数Target必须是Range对象Range(“A1”)或Cells(1)或ActiveCell。

    4.6K10

    正则表达式来了,Excel的正则表达式匹配示例

    用于匹配字符串Excel VBA正则表达式函数 要在Excel中使用正则表达式,需要创建自己的函数。...如何使用正则表达式在Excel匹配字符串 当所有要匹配的字符串都具有相同的模式时,正则表达式是理想的解决方案。...一次匹配多个单元格字符串 要使用单个公式匹配多个字符串,在第一个参数包含单元格区域引用: =RegExpMatch(A5:A9, “\b[A-Z]{2}-\d{3}\b”) 在支持动态数组的Excel365...原始字符串在A5,正则表达式在A2,公式采用以下形式: =RegExpMatch(A5, A2) 图5 注意,在正则表达式,\s表示任何空格字符,空格、制表符、回车符或换行符。...因为电话号码可以在字符串的任何位置,不一定在最开始的位置,所以会添加*量词来检查后面的每个字符。开头的^和结尾的$锚定确保处理整个字符串

    20.8K30
    领券