函数一览表
1. ETCombine
函数名: ETCombine(区域文本拼接)
函数描述: 将所选区域内的数据拼接为一个文本字符串,自动跳过空单元格和错误值。可指定拼接方向(横向或竖向)与连接字符。
函数参数1:dataRange — 需要拼接的数据区域
函数参数2:direction — 数据拼接的方向,默认为 TRUE 横向,FALSE 为竖向(可缺省,缺省按 TRUE 处理)
函数参数3:linkMark — 连接字符(可缺省,缺省时为空字符串)
使用案例:
假设 A1:C2 为水果与动物名称:
需求:将区域 A1:C2 中的所有文本拼接成一个字符串,横向(按行)遍历,以"-"连接。
=ETCombine(A1:C2, TRUE, "-")返回结果:
苹果-香蕉-樱桃-狗-猫-鸟若改为竖向(按列)遍历:
=ETCombine(A1:C2, FALSE, "-")返回结果:
苹果-狗-香蕉-猫-樱桃-鸟参数说明:
A1:C2:需要拼接的数据区域,包含 2 行 3 列文本。 TRUE/ FALSE:拼接方向。TRUE 表示横向(先按行从左到右,再逐行向下),FALSE 表示竖向(先按列从上到下,再逐列向右)。"-":连接字符,用于在每两个值之间插入分隔符;若缺省则直接相连。
2. ETStrSplit
函数名: ETStrSplit(按关键词分割文本)
函数描述: 用指定的一组关键词对一段文本进行分割或提取,返回一个横向数组(1 行多列)。通过第三个参数选择结果保留方式:分割文本、提取关键词或保留全部内容。
函数参数1:dataRange — 需要分割的文本(单个字符串,不能是多单元格区域)
函数参数2:wordList — 分割文本列,即作为分隔/提取依据的关键词,可以是单个文本或一个文本区域(区域中非文本类型会被跳过)
函数参数3:dataType — 结果保留方式(可缺省,缺省默认 1)。1 表示分割文本;2 表示提取列表内出现在文本中的关键词;3 表示保留所有内容(关键词与分割片段)
使用案例:
假设待分割文本为字符串 "2024年01月15日",关键词列表存放在 A1:A3:
需求一:以"年/月/日"为分隔符,将日期字符串分割为各部分。
=ETStrSplit("2024年01月15日", A1:A3, 1)返回结果(横向数组,横向选中 3 个单元格输入数组公式):
需求二:提取文本中实际出现的关键词。
=ETStrSplit("2024年01月15日", A1:A3, 2)返回结果:
需求三:保留所有内容(关键词与片段按出现顺序全部保留)。
=ETStrSplit("2024年01月15日", A1:A3, 3)返回结果:
参数说明:
"2024年01月15日":需要分割的文本,必须是单个字符串。 A1:A3:分割文本列,即关键词区域,包含"年""月""日"三个分隔词。 1/ 2/3:结果保留方式。1 为分割文本(去掉关键词后的片段);2 为提取文本中命中的关键词;3 为保留全部内容(片段与关键词均保留)。
3. ETSlice
函数名: ETSlice(数据区域切片)
函数描述: 按指定的行索引和列索引从数据区域中提取子区域,返回一个新的二维数组。行/列索引均为从 1 开始的序号;行切片或列切片缺省时分别提取全部行或全部列。
函数参数1:dataRange — 需要处理的数据区域
函数参数2:rowSlice — 行切片,指定要提取的行序号(单个数字、单行/单列数字区域或一维数组),缺失默认提取所有的行
函数参数3:columnSlice — 列切片,指定要提取的列序号(单个数字、单行/单列数字区域或一维数组),缺失默认提取所有的列
使用案例:
假设 A1:D4 为一个 4×4 的数字矩阵:
需求一:提取第 2 行第 3 列的单元格。
=ETSLICE(A1:D4, 2, 3)返回结果:
7需求二:提取第 1、3 行与第 2、4 列交叉的子区域。将行序号 {1;3} 放在 F1:F2,列序号 {2;4} 放在 G1:G2:
=ETSLICE(A1:D4, F1:F2, G1:G2)返回结果(选中 2×2 区域输入数组公式):
需求三:提取所有行的第 2 列(行切片缺省,提取全部行)。
=ETSLICE(A1:D4, , 2)返回结果(纵向 4 行):
参数说明:
A1:D4:需要处理的数据区域,4 行 4 列。 2/ F1:F2/ 缺省:行切片。本例分别为单个行号 2、行序号区域 {1;3}、缺省(提取全部 4 行)。3/ G1:G2/2:列切片。本例分别为单个列号 3、列序号区域 {2;4}、单个列号 2。
4. ETUnique
函数名: ETUnique(提取唯一值)
函数描述: 获取所选内容中的唯一值(去重后的值),返回一个纵向数组(多行 1 列),顺序为各值首次出现的先后顺序。空单元格不参与结果。
函数参数1:dataRange — 需要获取唯一数据的数据区域
使用案例:
假设 A1:A6 为水果名称(含重复项):
需求:去除 A1:A6 中的重复项,得到不重复的水果列表。
=ETUNIQUE(A1:A6)返回结果(选中纵向 3 个单元格输入数组公式):
参数说明:
A1:A6:需要获取唯一数据的数据区域,其中"苹果"出现 3 次、"香蕉"出现 2 次、"樱桃"出现 1 次,去重后保留 3 个唯一值,顺序按首次出现排列。
5. ETSort
函数名: ETSort(区域数据排序)
函数描述: 对选区内的数据进行排序,忽略空单元格,返回一个纵向数组(多行 1 列)。排序时按数据类型分组:升序时依次为数值、文本、布尔值、错误值;降序时顺序相反(错误值、布尔值、文本、数值)。同一类型内部按升/降序排列。
函数参数1:dataRange — 对选区内的数据进行排序,忽略空单元格
函数参数2:order — 排序类型(可缺省,缺省默认 TRUE)。TRUE 为降序排序;FALSE 为升序排序
使用案例:
假设 A1:A6 为待排序数据(数值与文本混合):
需求一:升序排序(数值在前,文本在后,各自升序)。
=ETSORT(A1:A6, FALSE)返回结果(选中纵向 6 个单元格输入数组公式):
需求二:降序排序(文本在前,数值在后,各自降序)。
=ETSORT(A1:A6, TRUE)返回结果:
参数说明:
A1:A6:需要排序的数据区域,包含 4 个数值(30、10、20、10)和 2 个文本(苹果、香蕉),空单元格自动忽略。 FALSE/ TRUE:排序类型。FALSE 为升序(数值升序在前,文本升序在后);TRUE 为降序(文本降序在前,数值降序在后),缺省时默认 TRUE 降序。
夜雨聆风