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

VBA使用2个分隔字符的双重拆分数组值

是指在VBA编程中,将一个字符串按照两个不同的分隔符进行拆分,并将拆分后的值存储到一个二维数组中。

在VBA中,可以使用Split函数来实现字符串的拆分操作。Split函数接受两个参数,第一个参数是要拆分的字符串,第二个参数是用于分隔的字符或字符串。

下面是一个示例代码,演示如何使用两个分隔字符进行双重拆分:

代码语言:txt
复制
Sub DoubleSplitArray()
    Dim inputString As String
    Dim splitArray() As String
    Dim finalArray() As Variant
    Dim i As Long
    
    ' 输入字符串
    inputString = "value1|value2;value3|value4;value5|value6"
    
    ' 第一次按照分号进行拆分
    splitArray = Split(inputString, ";")
    
    ' 初始化二维数组
    ReDim finalArray(1 To UBound(splitArray) + 1, 1 To 2)
    
    ' 第二次按照竖线进行拆分,并存储到二维数组中
    For i = 0 To UBound(splitArray)
        finalArray(i + 1, 1) = Split(splitArray(i), "|")(0)
        finalArray(i + 1, 2) = Split(splitArray(i), "|")(1)
    Next i
    
    ' 输出结果
    For i = 1 To UBound(finalArray, 1)
        Debug.Print finalArray(i, 1) & " - " & finalArray(i, 2)
    Next i
End Sub

在上述示例中,我们首先定义了一个输入字符串inputString,其中包含了多个值,每个值之间使用分号和竖线进行分隔。然后,我们使用Split函数两次进行拆分操作,首先按照分号进行拆分,得到一个一维数组splitArray,然后再按照竖线进行拆分,并将拆分后的值存储到二维数组finalArray中。

最后,我们通过循环遍历二维数组,将拆分后的值输出到调试窗口。

这种双重拆分数组值的方法在处理复杂的字符串数据时非常有用,可以灵活地将字符串按照多个分隔符进行拆分,并将拆分后的值存储到二维数组中,方便后续的数据处理和分析。

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

  • 云函数(Serverless):https://cloud.tencent.com/product/scf
  • 云数据库 MySQL 版:https://cloud.tencent.com/product/cdb_mysql
  • 云存储 COS:https://cloud.tencent.com/product/cos
  • 人工智能平台(AI Lab):https://cloud.tencent.com/product/ai
  • 物联网开发平台(IoT Explorer):https://cloud.tencent.com/product/iotexplorer
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

示例详解VBASplit函数

标签:VBA,Split函数 使用VBA时,有可能需要根据分隔符将字符拆分为不同部分。此时,就可以使用VBASplit函数。...Split函数是ExcelVBA中内置字符串函数,可用于根据分隔拆分文本字符串。...如果是一个长度为零字符串(“”),SPLIT函数将返回一个空数组。 2.参数Deimiter,可选,指定用于拆分“Expression”参数分隔符。如果不指定此参数,则空格字符被视为默认分隔符。...图1 在本示例中,只指定了第一个参数,即要拆分文本。由于未指定分隔符,因此将空格字符作为默认分隔符。 注意:VBA Split函数返回索引基于0开始数组。...图6 示例5:获取文本中指定字符使用VBASplit函数,可以指定要使用结果数组哪个部分。 下面是一个自定义函数代码,可以在其中指定一个数字,它将从数组中返回该元素。

7.2K20

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

如果调整数组大小同时,想要保留之前存储在数组数据,则需要使用Preserve关键字,告诉VBA在增加数组存储容量时,保留原来存储在数组数据。...分隔符是用于分隔数值指定字符,例如CSV文件就是由逗号分隔组成文件,我们可以将由分隔符组成字符拆分数组。...例如,下面的代码首先将数值转换成由“;|;”分隔字符串,然后将该字符串转换成数组。..., ";|;") End Sub 如果已经有一个带分隔字符串,那么可以使用代码很方便地将其拆分数组: Sub PopulateArray4() Dim MyArray As Variant...Dim myString As String '使用分隔字符串 myString = "一年级;|;二年级;|;三年级;|;四年级;|;五年级;|;六年级"

3.5K20

VBA数组(五)数组函数2

1、参数expression必需,为String型,即要拆分数组字符串。 2、参数delimiter可选,参数为拆分分隔符,如果省略则使用空格做为分隔符。...函数中第三参数limit为返回字符串数,通常是不指定。下面通过示例简单介绍下如何使用: 如果将上面示例修改下。在Split函数中加入第三参数limit参数为2,即要求拆分成两个字符串。...那么只有“a”一个分隔符,会拆分成两个“ABC”和“bcABC”两个字符。...Join函数 上面介绍Split函数是将字符串分割,然后返回一个一维数组。那么Join函数正相反,Join函数是将一个一维数组元素使用指定分隔符连接成一个新字符串返回。...下届可以是任意。 2、参数delimiter可选,为String字符串型,用来连接数组各元素分隔符。如果没有指定该参数,那么使用空格作为分隔符。

2.9K20

如何使用VBA统计字符串中某个特定字符

标签:VBA,Split函数 如果要统计某单元格中指定某特定字符数量,可以使用LEN/SUBSTITUTE函数组经典公式(假设字符串位于单元格B2): =LEN(B2)-LEN(SUBSTITUTE...图1 如果要统计单元格区域(示例中为单元格区域B2:B5)中包含指定某特定字符数量,可以使用下面的公式: =SUMPRODUCT(LEN(B2:B5)-LEN(SUBSTITUTE(LOWER(B2...图2 如果将上述两种情况使用VBA来实现,应该如何编写代码呢? 也很简单。...如果要统计单元格B2中字符“f”数量,使用代码: UBound(Split(LCase(Range("B2")),"f")) 代码使用Split函数以字母“f”为分隔符对字符拆分拆分后获得数组上限值与字符数相等..."f")) 代码使用Join函数将单元格区域中字符串联接,然后使用Split函数以字母“f”为分隔符对字符拆分拆分后获得数组上限值与字符数相等。

5.1K10

vba新姿势,如何让vba数据处理超越Python

泰坦尼克号沉船事件中乘客信息表: 实现几个简单拆分需求: 按"性别",把数据拆分到不同工作表,工作表名字使用"性别()" 按 "性别"、"船舱等级",把数据拆分到不同工作表,工作表名字使用"...性别(),船舱等级()" 按 "性别" ,把数据拆分到不同工作簿(文件),文件名字使用"性别.xlsx",每个对应文件中,按 "船舱等级",拆分到不同工作表,工作表名字使用"船舱等级()"...---- 需求2:按 "性别"、"船舱等级",把数据拆分到不同工作表,工作表名字使用"性别(),船舱等级()" 先看 pandas : 再看vba: 与之前需求变动非常少,因为本身需求表达变动也不多...代码就不应该有很大区别 groupby_apply 参数2,使用英文逗号分隔指定列号即可多关键列分组 对比结果也与前一个需求一样,打个平手。...---- 数据传递 需求3:按 "性别" ,把数据拆分到不同工作簿(文件),文件名字使用"性别.xlsx",每个对应文件中,按 "船舱等级",拆分到不同工作表,工作表名字使用"船舱等级()"

3K10

VBA自定义函数:将字符拆分成二维数组

标签:VBA,自定义函数 下面是在forum.ozgrid.com看到一段VBA程序,值得参考,特辑录于此。 这个自定义函数将字符拆分成二维数组。...在调用该函数时,只需指定字符串、希望生成数组具有的列数以及用于将字符串转换为二维数组分隔符。默认分隔符是空格字符,但可以是想要任何字符,它将计算所需行数。...VBA自定义函数如下: Option Base 0 '将字符串转换为二维数组 - 默认使用空格作为分隔符 Public Function Str_2d(str As String, intCol, Optional...arrTemp, arrTemp2 Dim iCount As Integer Dim Row_Count As Integer Dim Col_Count As Integer '确定结果数组大小和形状...,它是一个从零开始数组 arrTemp = Split(str, Delim) iCount = 0 ReDim arrTemp2(Num_Rows - 1, intCol - 1) For

16810

Excel VBA解读(155): 数据结构—数组相关函数

学习Excel技术,关注微信公众号: excelperfect VBA提供了一些内置函数,可以方便地生成或者处理数组。 Array函数 Array函数可以使用一组数据来填充数组。...图1 注意,使用Array函数创建数组下标索引以0开始。然而,如果在模块顶部使用语句Option Base 1,则下标索引从1开始。...Split函数 Split函数根据分隔符将字符拆分数组,例如代码: Dim str As String Dim MyArray() As String str= "红,绿,蓝,三原色" MyArray...与Array函数不同是,Split函数创建数组下标索引总是从0开始,无论在代码模块顶部是否使用了语句Option Base 1。...Join函数 Join函数使用指定分隔符将数组各元素连接起来成为一个字符串,例如代码: Dim MyArray As Variant Dim str As String MyArray= Array

1.4K30

问与答61: 如何将一个文本文件中满足指定条件内容筛选到另一个文本文件中?

Q:如下图1所示,一个名为“InputFile.csv”文件,每行有6个数字,每个数字使用空格分隔开。 ?...A:VBA代码如下: Sub FilterTextFile() Dim ReadLine As String Dim buf '使用Open语句打开或创建文件 OpenThisWorkbook.Path...ReadLine变量 Line Input #1, ReadLine '将ReadLine中字符拆分数组 buf =Split(ReadLine,..." ") '判断数组第1个是否处于60至69之间 '如果是则将其写入文件号指定文件 If buf(0) >= 60 And buf(0) < 70...5.Split函数将字符使用指定空格分隔拆分成下标以0为起始一维数组。 6.Print语句将ReadLine变量中字符串写入文件号#2文件。 7.Close语句关闭指定文件。

4.3K10

简谈VBASplit函数

标签:VBA,Split函数 Excel VBA提供了一种自定义方式来拆分单元格中文本,即Split函数,这在需要将单元格内容拆分为许多部分时非常有用。...Split函数语法如下: Split(string,delimiter,limit,compare) 其中, 参数string,想要拆分字符串。 参数delimiter,将字符串分成段字符。...参数limit,默认为-1,意味着每个分隔符都将进行拆分。 参数compare,告诉Excel是执行二进制比较还是文本比较。零(0)用于执行二进制比较(这是默认)。数字一(1)用于执行文本比较。...图1 默认情况下,Split函数以空格作为分隔符来拆分字符串,因此下面的语句作用相同: arr=Split(str, “ “) 省略最后两个参数(limit和compare,因为它们是可选)。...如果想在单元格区域A1:A4中输入拆分字符串,可以使用语句: Range(“A1:A” & UBound(var,2))=Application.Transpose(var)

2.9K50

Excel实战技巧76: 使用文本文件隐藏登录敏感信息

经常看到很多人会将他们登录名/密码直接存储在VBA代码中甚至工作表中,这是很不安全一种处理方式。...例如,下面使用VBA来自动登录公司数据库代码: '作用:使用Excel VBA登录到公司数据库Sub DatabaseLogin() Dim ID_List As Variant Dim...首先,将自已用户名和密码保存在个人计算机上,可以将它们保存到文本文件中,如下图1所示。 ? 图1 你需要使用程序所有团队用户都使用相同文件名并将该文件放置在各自计算机相同位置。...,使用Environ函数提取默认路径,可将将文本文件所在文件夹追加到该路径后面以创建完整路径。...如果在指定路径中找到了指定文本文件,则由程序自已处理。Split函数将文本字符串通过分隔拆分,并存放在数组中,其起始元素索引为0。也就是说,数组第一个元素将存放用户名,第二个存放密码。

1.7K20

Excel技巧:快速处理单元格内换行符

标签:Excel技巧,VBA 在Excel中,如果我们想要在一个单元格中将内容显示在不同行,可以在需要断行处使用Alt+回车键。然而,有时候会反过来。...如果“替换为”文本框中内容为空,将删除换行符,如果在“替换为”文本框中输入空格(或任何想要字符),所有换行符将被空格(或选择字符)替换。...使用VBA 下面的代码使用了Selection,因此它只在选定单元格上执行。此外,代码关闭了“换行”命令,让你可以很容易地看到代码效果。代码本身非常简单,实际上使用了Excel查找和替换工具。...最简单方法是使用“分列”命令。例如,下图1所示工作表。...图1 选择要拆分单元格,单击功能区“数据”选项卡中“分列”命令,在“文本分列向导”第2步中分隔符号”选择“其他”,使用Ctrl+J或Alt+0010插入换行符,如下图2所示。

2.6K20

VBA专题06-1:利用Excel中数据自动化构建Word文档—了解Word对象模型

本专题先讲解了Word对象模型中常用对象,让大家先熟悉VBA是如何操控Word文档,有了一定Word VBA基础知识后,再通过详细示例演示Excel与Word交互技术。...了解Word对象模型 与Excel一样,我们使用VBA来调用Word对象模型中对象及其属性、方法和事件,从而实现对Word控制。...下图2展示了Word文档中一些常用对象。 ? 图2:文档文本对应常用对象示例 以上图2中所选择段落为例,使用VBA代码来对其进行分析。...图3:上图1所选文本中段落和句子分析结果 可以看出,Word VBA是以“。”或“.”为分隔符来拆分出句子。...图4:上图1所选文本中词和字符分析结果 可以看出,Word VBA将符号作为一个词。

2.9K40

VBA编程练习01. 拆分算术表达式

练习:将算术表达式拆分成组成该表达式数学元素,例如将表达式2+(19-4)/3拆分成 ? 如何使用VBA代码实现呢? 关键点:如何将表达式中超过1位数字提取出来,例如上面示例中数字19。...解决方法:使用一个临时变量判断是否是数字,同时利用这个变量来计算该数字位数,然后使用该变量作为遍历条件来获取该数字。...VBA代码: Sub SplitExpress() '存储表达式每个字符 Dim var1() '存储表达式中各元素(符号和数字) Dim var2() '表达式...Dim str As String '示例表达式 '可以换成你自已表达式 '或者使用输入框让用户自已输入表达式 express ="66+{[3+((5-2...ReDim var1(1 To lLen) '将表达式拆分单个字符 For i = 1 To lLen var1(i) = Mid(express,i, 1)

86210

一个VBA自定义函数,使用文本格式连接唯一单元格

标签:VBA实用代码 一个单元格区域内有一组数字,这些数字中存在多个相同数字,想要将这些数字中唯一提取出来并组合成一串数字文本,如下图1所示。...图1 可以使用VBA编写自定义函数来实现,代码如下: Function ConcatenateUnique(ByRef rngRange As Range, _ Optional ByVal...ConcatenateUnique = strAnswer End Function 这个函数仅将指定单元格区域中唯一使用可选格式字符串连接起来。...如果未指定格式字符串,则被视为字符串(@)。此函数在每个之间插入分隔字符串,默认分隔符设置为” ”。 这段代码来自strugglingtoexcel.com。...通常,我们会考虑使用Dictionary对象,在连接符合要求之前获取唯一列表。然而,这段代码另辟蹊径,使用VBAInStr函数,在连接之前检查是否已将添加到结果中,如果没有则添加。

1.7K20

VBA代码库08:获取字符串中指定位置字符

excelperfect 下面的自定义函数:ExtractString函数,来源于《VBA Developer’s Handbook》,对于分析字符串来说,是一个很有用函数。...《VBA代码库07.功能强大字符替换函数》介绍TranslateString函数,将字符串中分隔符全部替换为分隔符列表中第一个分隔符。...,找到指定位置字符串在字符串中开始位置(之前分隔符位置,即变量iLastPos)和结束位置(之后分隔符位置,即变量iPos)。...如果查找分隔符失败,则iPos1为0,退出循环。...图1 示例2:在公式中使用来提取指定位置字符串 如下图2所示,演示了在公式中使用ExtractString函数几种情形。 ? 图2 下面是代码图片版: ?

3.3K10

c中截取字符串(java字符串replace用法)

Split( Char ()) 返回字符数组包含此实例中字符串(由指定 Unicode 字符数组元素分隔)。 根据单个分隔字符用split截取。...(由指定字符数组元素分隔)。...下面的示例将一系列数字之间空白替换为逗号,从而创建以逗号分隔列表。...Split 方法使用区分大小写序号排序规则执行比较,从而查找分隔符。 Split 方法忽略 separator 任何为 Nothing 或空字符串 (“”) 元素。...此外,如果在多个 Split 方法调用中使用相同字符拆分字符串,请考虑创建一个数组并在每个方法调用中都引用该数组。 这可以极大地减少每个方法调用额外系统开销。

1K10
领券