AHK调用excel.workbooks.opentext方法

重点:AHK保留字
需要转换以Tab为分隔符的文本文件为Excel工作表,示例代码如下:
1)appExcel := ComObject(“Excel.Application”)
2)appExcel.Workbooks.OpenText(Filename:=A_Desktop “sample.txt”, Origin:=65001, StartRow:=1, DataType:=1, Tab:=True)

3)appExcel.Workbooks.OpenText(Filename:=A_Desktop “sample.txt”, Origin:=65001, StartRow:=1, DataType:=1, TextQualifier:=1, ConsecutiveDelimiter:=True, Tab:=True, Semicolon:=False, Comma:=False, Space:=False, Other:=False, OtherChar:=False, FieldInfo:=Array(Array(1, 2), Array(2, 2), Array(3, 2), Array(4, 2)), TextVisualLayout:=false, DecimalSeparator:=false, ThousandsSeparator:=false, TrailingMinusNumbers:=True, Local:=false)

语句2)可以完成转换但没按Tab分列
语句3)参照微软帮助(https://learn.microsoft.com/zh-cn/office/vba/api/excel.workbooks.opentext)补齐所有参数,会报错:The following reserved word must not be used as a variable name:”Local”,删除Local参数则会报错:Too few parameters passed to function.
经试验在有FieldInfo参数时Local参数也必须有,但Local是AHK的保留字,该怎么办呢?

想到参数齐全顺序正确的情况下可以不写变量名,但如下3)语句依然会报错:Too few parameters passed to function,问题可能出在数组型参数FieldInfo上吧,Array(Array(1, 2), Array(2, 2), Array(3, 2), Array(4, 2))的写法不对吗?
3) appExcel.Workbooks.OpenText(A_Desktop “sample.txt”, 65001, 1, 1, 1, True, True, False, False, False, False, False, Array(Array(1, 2), Array(2, 2), Array(3, 2), Array(4, 2)), false, false, false, True, false)

论坛管理 管理员

热门评论
:
该帖子评论已关闭
图片审查中...
编辑答案: 我的回答: 最多上传一张图片和一个附件
x
x
个人中心
购物车
优惠劵
有新私信 私信列表
搜索