”过滤数组数据“碰到的一个奇怪的bug

李_533782 2023-3-24 325

arrayRet2 = Filter([ "进度", "1", "1", "1", "1", "1", "1", "1", "1", "", "", "", "", "", "", "", "", "", "" ],Null,True)

输出是

[
"进度",
"1",
"1",
"1",
"1",
"1",
"1",
"1",
"1"
]

但如果从Excel表读取列,读取同样的数组,执行过滤数组数据,得到的是

[
"进度"
]


附加源代码和Excel表

App.Kill("excel.exe")
objExcelWorkBook = Excel.OpenExcel('''C:\Users\Administrator\Desktop\test.xlsx''',True,"Excel","","")
arrayRet1 = Excel.ReadColumn(objExcelWorkBook,0,[1,3])
TracePrint(arrayRet1)
Excel.CloseExcel(objExcelWorkBook,True)
arrayRet2 = Filter(arrayRet1,Null,True)
TracePrint(arrayRet2)


上传的附件:
最新回复 (3)
  • 果子哩 2023-3-24
    2
    命令中心,有个Lzw的命令,有数组去重的功能
  • 柔情似水 2023-3-25
    3
    数组有去重啊   每次都用数据表去重  了解了
  • 李_533782 2023-3-25
    4
    果子哩 命令中心,有个Lzw的命令,有数组去重的功能
    不是去重,是去空字符串。直接输入和Excel表输入,结果不一样
返回
发新帖