vb.net - 在 VB 中运行 .bat 文件
问题描述
在运行 Excel 程序的 Win 10 中,我有一个执行 VB 的按钮。模块。在模块中是语句Process.Start ("Batfile.bat")
。Batfile.bat 与 Excel 文件位于同一目录中。Batfile 的内容很简单
pause
msg * List Created!
这是完整的代码:
Sub Worksheets_to_txt()
'<--Saves each worksheet as a text file with the same name
Dim CalcState As Long
Dim EventState As Boolean
Dim PageBreakState As Boolean
Application.ScreenUpdating = False
' EventState = Application.EnableEvents
' Application.EnableEvents = False
CalcState = Application.Calculation
Application.Calculation = xlCalculationManual
PageBreakState = ActiveSheet.DisplayPageBreaks
ActiveSheet.DisplayPageBreaks = False
Dim ws As Worksheet
Dim relativePath As String
Dim answer As VbMsgBoxResult
relativePath = ActiveWorkbook.Path
' answer = MsgBox("Are you sure you want to export worksheets?", vbYesNo, "Run Macro") '<--Pop up box to confirm export
Process.Start ("Batfile.bat")
' If answer = vbYes Then
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For Each ws In ActiveWorkbook.Worksheets
ws.Select
ws.Copy
ActiveWorkbook.SaveAs Filename:= _
relativePath & "\" & ws.Name & ".txt", _
FileFormat:=xlText, CreateBackup:=False
ActiveWorkbook.Close
ActiveWorkbook.Activate
Next
Worksheets("Master").Activate
MsgBox "Text files have been created."
' End If
ActiveSheet.DisplayPageBreaks = PageBreakState
Application.Calculation = CalcState
' Application.EnableEvents = EventState
Application.ScreenUpdating = True
End Sub
当我在 Excel 之外单独执行它时,它运行良好,但是按下 excel 中的按钮给了我
运行时错误“424”:
所需对象
我尝试了许多在线补救措施,但我一直得到相同的结果。我究竟做错了什么?
解决方案
System.Diagnostics.Process.Start() 应该可以正常工作。请尝试提供绝对路径。
推荐阅读
- php - PHP页面不显示下载的PNG文件
- javascript - GofL 数组框架
- python - 在字典 Python 中传输值的函数
- neural-network - 在解码过程中为词汇表外的单词使用 UNK 标记有什么意义?
- php - 插入mysql(数据库)时的空白条目
- python - 值错误:无法将字符串转换为浮点数
- json - 将具有名称和值的 JSON 转换为 TSV?
- machine-learning - 我使用 MLP 制作国际象棋引擎的方法有什么问题?
- windows - 让 Google Course Builder 从 Windows 7 部署
- c# - 如何从 cosmos 数据库中删除容器中的所有项目?