【函数6:CONCAT】 CONCAT的功能是连接字符串,对工作表区域有效,对数组同样有效,元素是数值和字符串都可以,二维数组时逐行连接,在用于数组元素处理时,Application.Concat()可以批量处理,能够大幅减少代码的行数。 示例代码: Sub ConcatTest() arr =[row(1:6774)&"a"] s = Application.Concat(arr) '连接后字符长度不能超过32767 MsgBox s End Sub
【函数7:TEXTJOIN】 TEXTJOIN的功能也是连接字符串,但它可以设置分隔符,比CONCAT用途更广泛,对工作表区域有效,对数组同样有效,元素是数值和字符串都可以,二维数组时逐行连接,在用于数组元素处理时,Application.TextJoin()可以批量处理,能够大幅减少代码的行数。 示例代码: Sub TextJoinText() arr = [row(1:6775)] s = Application.TextJoin(",", True,arr) '连接后字符长度不能超过32767 MsgBox s End Sub
【函数8:UNICODE和UNICHAR】 UNICODE的功能是将一个字符转换成UNICODE编码,UNICHAR正好相反,和进制转换函数一样,对爱好汉化的我来说算是比较有用的。在用于数组元素处理时,Application.Unicode()和Application.Unichar()可以批量处理,能够大幅减少代码的行数。 示例代码: Sub UniTest() arr = ["あ"&row(1:1000000)] '建立100万元素的数组 arr =Application.Unicode(arr) '仅能转换每个元素的第一个字符 MsgBoxJoin(Array(arr(1, 1), arr(2, 1), arr(3, 1)), vbCrLf) arr =Application.Unichar(arr) MsgBoxJoin(Array(arr(1, 1), arr(2, 1), arr(3, 1)), vbCrLf) End Sub
【补充】 还有一些工作表函数也可以对数组进行整体处理,但是因为有些功能存在重复或者实用性不高,所以不一一写示例了,有需要者可以自行测试: Application.BahtText():数字转泰语 Application.Dollar():数字转金额(可以用TEXT代替) Application.Fixed():设置数字格式(可以用TEXT代替) Application.NumberValue():将含有数字的字符串转成数值,没有深入研究 Application.Roman():数字转罗马字,最大支持3999
|