Execl转csv例程
.版本 2
.程序集 Execl转csv
.程序集变量 集_Excel状态, 逻辑型
.程序集变量 集_Excel对象, 对象
.程序集变量 集_工作簿对象, 对象
.程序集变量 集_文件工作簿对象, 对象
.程序集变量 集_错误信息, 文本型
.子程序 _启动子程序, 整数型
返回 (0)
.子程序 Execl转csv_开启, 逻辑型, , 后台打开一个EXCEL
集_错误信息 = “”
集_Excel对象.创建 (“Excel.Application”, )
.如果真 (集_Excel对象.是否为空 ())
集_错误信息 = “创建Excel失败,本机可能未安装OFFICE或版本不符”
返回 (假)
.如果真结束
集_Excel状态 = 真
集_Excel对象.写属性 (“Visible”, 假)
集_工作簿对象 = 集_Excel对象.读属性 (“Workbooks”, ).取对象 ()
返回 (真)
.子程序 Execl转csv_转换, 逻辑型
.参数 文件名, 文本型
.参数 返回文档名, 文本型, 可空 数组, 放入文本数组,返回所有表格标题
.参数 返回文档内容, 文本型, 可空 数组, 放入文本数组,返回所有表格内容
.局部变量 局_临时表路径, 文本型, , "0"
.局部变量 局_计次, 整数型
.局部变量 局_表数量, 整数型
集_错误信息 = “”
.如果真 (集_Excel状态 = 假)
集_错误信息 = “未加载Excel”
返回 (假)
.如果真结束
集_文件工作簿对象 = 集_工作簿对象.通用方法 (“Open”, 文件名).取对象 ()
.如果真 (集_文件工作簿对象.是否为空 ())
集_错误信息 = “打开文件失败”
返回 (假)
.如果真结束
局_表数量 = 集_文件工作簿对象.读属性 (“Sheets”, ).取对象 ().读数值属性 (“Count”, )
.如果真 (局_表数量 = 0)
集_错误信息 = “工作表异常”
返回 (假)
.如果真结束
.如果真 (是否为空 (返回文档名) = 假)
重定义数组 (返回文档名, 假, 局_表数量)
.如果真结束
.如果真 (是否为空 (返回文档内容) = 假)
重定义数组 (返回文档内容, 假, 局_表数量)
.如果真结束
重定义数组 (局_临时表路径, 假, 局_表数量)
.计次循环首 (局_表数量, 局_计次)
局_临时表路径 [局_计次] = 取临时文件名 ()
集_文件工作簿对象.读对象型属性 (“Sheets”, ).读对象型属性 (“Item”, 局_计次).方法 (“Activate”, )
.如果真 (是否为空 (返回文档名) = 假)
返回文档名 [局_计次] = 集_文件工作簿对象.读对象型属性 (“Sheets”, ).读对象型属性 (“Item”, 局_计次).读文本属性 (“Name”, )
.如果真结束
.如果真 (是否为空 (返回文档内容) = 假)
集_文件工作簿对象.方法 (“SaveAs”, 局_临时表路径 [局_计次], 6)
.如果真 (集_文件工作簿对象.取错误 () ≠ “”)
集_错误信息 = “写入临时文件失败”
返回 (假)
.如果真结束
.如果真结束
.计次循环尾 ()
集_文件工作簿对象.写属性 (“Saved”, 真)
集_文件工作簿对象.方法 (“Close”, )
.如果真 (是否为空 (返回文档内容) = 假)
.计次循环首 (局_表数量, 局_计次)
返回文档内容 [局_计次] = 到文本 (读入文件 (局_临时表路径 [局_计次]))
删除文件 (局_临时表路径 [局_计次])
.计次循环尾 ()
.如果真结束
返回 (真)
.子程序 Execl转csv_关闭, 逻辑型, , 关闭后台打开的EXCEL
集_错误信息 = “”
集_Excel对象.方法 (“Quit”, )
集_Excel状态 = 假
返回 (真)
.子程序 Execl转csv_取错误信息, 文本型
返回 (集_错误信息)