ARTICLE · 981919
Excel efunction函数插件教程合辑3
ETArrayPick
函数名: ETArrayPick(对区域进行切片)
函数描述: 从指定区域中按起始行、行数、起始列、列数截取一个子区域(切片)并返回。
函数参数1:dataRange — 需要处理的选区
函数参数2:startRow — 开始行(从 1 开始计数的行号)
函数参数3:rows — 行数(要截取的行数)
函数参数4:startColumn — 开始列(从 1 开始计数的列号)
函数参数5:columns — 列数(要截取的列数)
使用案例:
假设 A1:D4 区域内有 4×4 的数据:
需求:从第 2 行第 2 列开始,截取 2 行 2 列。
=ETArrayPick(A1:D4, 2, 2, 2, 2)返回结果:
参数说明:
dataRange:A1:D4,源区域。 startRow:2,开始行为第 2 行。 rows:2,截取 2 行。 startColumn:2,开始列为第 2 列。 columns:2,截取 2 列。
ETStrProcessChar
函数名: ETStrProcessChar(处理文本内的连续字符)
函数描述: 对文本内的连续重复字符进行处理,支持三种模式:提取连续字符、剔除连续字符、保留唯一字符(去重)。
函数参数1:dataRange — 需要处理的文本
函数参数2:model — 处理模式:1. 提取连续的字符;2. 剔除连续的字符;3. 保留唯一的字符
使用案例:
假设 A1 为文本:aaabbbcccdd。
需求一:提取连续字符(模式 1)。
=ETStrProcessChar(A1, 1)返回结果:abcd(保留每组连续字符的代表)
需求二:剔除连续字符(模式 2)。
=ETStrProcessChar(A1, 2)返回结果:剔除所有连续重复字符后的结果
需求三:保留唯一字符(模式 3,去重)。
=ETStrProcessChar(A1, 3)返回结果:abcd
参数说明:
dataRange:A1,待处理文本。 model:1 提取连续字符 / 2 剔除连续字符 / 3 保留唯一字符。
ETRangeJoin
函数名: ETRangeJoin(将 Excel 不连续区域拼接为连续的区域)
函数描述: 将多个不连续的区域(或值)按顺序拼接为连续的一维数组。该函数使用 ExplicitRegistration = true,可在公式中以多个区域参数形式调用。
函数参数1:dataRange — 需要拼接的区域
函数参数2:dataRanges — 需要拼接的区域们(可变参数,可传入多个区域或值)
使用案例:
假设 A1:A2 与 C1:C2 是不连续的两个列区域:
需求:将 A1:A2 与 C1:C2 拼接为连续区域。
=ETRangeJoin(A1:A2, C1:C2)返回结果(一维行向量):
参数说明:
dataRange:A1:A2,第一个区域。 dataRanges:C1:C2,第二个区域(可变参数,可继续追加更多区域)。
ETStrSeparate
函数名: ETStrSeparate(将文本分割为独立字符)
函数描述: 将文本按指定长度分割为多个独立的子串,返回一维数组。每个子串长度为 subLen(最后一段可能不足该长度)。
函数参数1:dataRange — 需要处理的文本
函数参数2:subLen — 文本分割的长度
使用案例:
假设 A1 为文本:ABCDEFGHI。
需求:按长度 3 分割文本。
=ETStrSeparate(A1, 3)返回结果(行向量):
参数说明:
dataRange:A1,待处理文本"ABCDEFGHI"。 subLen:3,每个子串长度为 3。
ETGetUUID
函数名: ETGetUUID(获取唯一码,UUID)
函数描述: 生成一个全局唯一的 UUID 字符串。isMark 为 TRUE 或省略时返回不带连字符的 32 位字符串;为 FALSE 时返回带连字符的标准 UUID 格式。该函数为易失性函数,每次重算会重新生成。
函数参数1:isMark — 默认为 TRUE,无拼接符;FALSE 表示有"-"拼接符
使用案例:
需求一:生成不带连字符的 UUID。
=ETGetUUID(TRUE)返回结果(示例):E1B2C3D4E5F6A7B8C9D0E1F2A3B4C5D6
需求二:生成带连字符的标准 UUID。
=ETGetUUID(FALSE)返回结果(示例):E1B2C3D4-E5F6-A7B8-C9D0-E1F2A3B4C5D6
参数说明:
isMark:TRUE 无连字符 / FALSE 带连字符。
ETFlipArray
函数名: ETFlipArray(对区域数据进行翻转)
函数描述: 对区域数据进行翻转,支持上下翻转(行序倒置)或左右翻转(列序倒置)。
函数参数1:dataRange — 需要翻转的区域
函数参数2:flipType — 翻转方式:默认 TRUE 为上下翻转;FALSE 为左右翻转
使用案例:
假设 A1:B2 内有数据:
需求一:上下翻转。
=ETFlipArray(A1:B2, TRUE)返回结果:
需求二:左右翻转。
=ETFlipArray(A1:B2, FALSE)返回结果:
参数说明:
dataRange:A1:B2,待翻转区域。 flipType:TRUE 上下翻转 / FALSE 左右翻转。
ETSequence
函数名: ETSequence(获取等差序列)
函数描述: 生成一个等差序列一维数组。从开始值出发,按指定步长生成指定数目的元素。
函数参数1:start — 序列开始值
函数参数2:number — 序列数目(元素个数)
函数参数3:step — 序列步长
使用案例:
需求:生成从 10 开始、共 5 个数、步长为 3 的等差序列。
=ETSequence(10, 5, 3)返回结果(行向量):
参数说明:
start:10,序列开始值。 number:5,共 5 个数。 step:3,步长为 3。
ETStrTranverse
函数名: ETStrTranverse(对文本进行翻转)
函数描述: 将文本字符顺序翻转(首尾倒置)后返回。
函数参数1:strRange — 待翻转的文本
使用案例:
假设 A1 为文本:Hello。
需求:翻转文本。
=ETStrTranverse(A1)返回结果:olleH
参数说明:
strRange:A1,待翻转文本"Hello"。
ETAddPrefix
函数名: ETAddPrefix(在元素前后添加前后缀)
函数描述: 对区域中每个元素添加指定前后缀字符串。prefixType 为 TRUE 或省略时添加前缀,为 FALSE 时添加后缀。
函数参数1:dataRange — 需要处理的选区
函数参数2:prefix — 添加到前后缀的文本
函数参数3:prefixType — 前缀模式:默认 TRUE 添加前缀;FALSE 添加后缀
使用案例:
假设 A1:A3 内有数据:
需求一:为每个元素添加前缀"员工:"。
=ETAddPrefix(A1:A3, "员工:", TRUE)返回结果:
需求二:为每个元素添加后缀"(已签到)"。
=ETAddPrefix(A1:A3, "(已签到)", FALSE)返回结果:
参数说明:
dataRange:A1:A3,待处理区域。 prefix:要添加的前后缀文本。 prefixType:TRUE 前缀 / FALSE 后缀。
ETRegexMatch
函数名: ETRegexMatch(正则表达式匹配)
函数描述: 使用正则表达式对文本进行匹配,返回匹配到的内容。invert 为 FALSE 或省略时保留提取的内容,为 TRUE 时剔除提取的内容(返回不匹配的部分)。
函数参数1:strRange — 文本数据
函数参数2:regex — 正则表达式
函数参数3:invert — 是否取反:默认为 FALSE,表示保留提取的内容;TRUE 表示剔除提取的内容
使用案例:
假设 A1 为文本:订单号:ORD20250825,金额:¥199.5。
需求一:提取所有数字。
=ETRegexMatch(A1, "\d+", FALSE)返回结果:20250825 与 199 与 5(匹配到的数字内容)
需求二:剔除所有数字,保留其他内容。
=ETRegexMatch(A1, "\d+", TRUE)返回结果:订单号:ORD,金额:¥.(移除数字后的剩余文本)
参数说明:
strRange:A1,待处理文本。 regex: \d+,匹配一个或多个数字。invert:FALSE 保留匹配 / TRUE 剔除匹配。
ETRegexReplace
函数名: ETRegexReplace(正则表达式替换)
函数描述: 使用正则表达式匹配文本中的内容,并将匹配到的部分替换为指定字符串。源码 Description 标注为"正则表达式匹配",但实际行为是正则替换。
函数参数1:strRange — 文本数据
函数参数2:regex — 正则表达式
函数参数3:strReplace — 替换的内容,文本类型数据
使用案例:
假设 A1 为文本:电话:13800138000。
需求:将电话号码替换为****以脱敏。
=ETRegexReplace(A1, "\d+", "****")返回结果:电话:****
参数说明:
strRange:A1,待处理文本。 regex: \d+,匹配数字。strReplace: "****",替换字符串。