vbs操作excel
2024-10-09 18:55:25
航天金税系统升级,导出的Excel文件格式与原来有的差异,老的数据导入程序识别不了该文件,对比了新老文件后,发现新文件在专票和普票的“份数”行前增加了一行,同时增加了“单据号”列,通过脚本 把这些删除。
SetNewFormat("C:\Users\gukajie\Desktop\增值税专普发票数据导出20150619.xls") Function SetNewFormat(filename)
Dim Ex, Wb, Sht
Dim LastRow, r
Dim name3
Set Ex = CreateObject("Excel.Application")
Set Wb = Ex.Workbooks.Open((filename))
Set Sht = Wb.Sheets("Sheet1")
'删除第2到第5行
'Sht.Rows("2:5").Delete
LastRow = Sht.UsedRange.Rows.Count
'MsgBox LastRow
For r = To LastRow Step
name =Sht.range("A"&r).Value
name2 =Sht.range("J"&(r-)).Value
If (left(name,)="份数" and name2="") Then
Sht.Rows(r-).Delete
'MsgBox r
End If If (r=) Then
name3 =Sht.range("H"&()).Value
End If Next If (name3="单据号") Then
Sht.Columns().Delete
End If Ex.ActiveWorkbook.Save
'MsgBox "操作完成"
Ex.Quit
End Function
但是把脚本加入windows计划任务后发现无法执行,第次运行进程里面会多出一个wscript.exe和Excel32.exe进程。实际上脚本 在执行
Set Ex = CreateObject("Excel.Application")
后就没有再执行。 google了一下,发现
CreateObject("Excel.Application")
需要有交互要求,有交互要求的脚本不能在计划任务中直接运行。
只有在用户登录的情况下才能执行,所以,计划任务属性中需要勾选:
最新文章
- Js 数组返回去重后的数据
- SpringMVC国际化
- JS-DOM 综合练习-动态添加删除班级成绩表
- ROCK 聚类算法
- Chrome插件Visual Event查看Dom元素绑定事件的利器
- Java学习03
- FastReport扩展类
- Oracle Day07 PL/SQL基础
- iOS开发之监听键盘高度的变化
- 【闲聊PHP】编程界的萝莉小美女--PHP
- spark-MLlib之线性回归
- vue页面引入外部js文件遇到的问题
- Codeforces 1089K - King Kog's Reception - [线段树][2018-2019 ICPC, NEERC, Northern Eurasia Finals Problem K]
- 移动端滑动轮播,原生JS
- [转帖]UML各种图总结-精华
- 【Https】Spring RestTemplete支持Https安全请求
- 按ctrl+shift切换不了输入法
- [java] 数据处理
- SliTaz 从入门到精通
- Gradle 下载不了