2014-10-28 124 views
0

我遇到了一个简单的批处理文件(打开命令提示符)从vbs宏运行的问题,我知道这个问题会被问及很多,我已尝试过许多不同的建议解决方案,但没有成功。我正在使用记事本++运行脚本/ VB代码进行测试。从VB宏(.vbs)运行批处理(.bat)文件

我已验证.bat文件将自行正确执行,任何有关如何使其正常工作的建议将不胜感激。

这是我的每个实例的代码。

VB代码:

Sub CallBATCH() 
    Dim argh As Double 
    argh = Shell.Run "C:\Temp\cmdPrompt.bat" 
End Sub 

批处理文件:

start cmd.exe /k 

编辑:下面是我在调用实际打算.bat文件:

@echo OFF 
title AutoCAD DWG Duplicator 
color 0a 
:start 
set /P TemplateName=Please enter the template name you wish to copy: 
set /P NumberOfCopies=Please enter how many copies you wish to make: 
set Pathname="<filepath>" 
cd /d %Pathname% 
:init 
for /L %%f in (1,1,%NumberOfCopies%) do copy %TemplateName%.dwg C:\Temp\%%f%TemplateName%.dwg 
+2

注意:VBS和VBA不是一回事。 – RBarryYoung 2014-10-28 14:27:19

回答

0

您似乎在呼叫.BAT文件依次打开命令提示符START。我不清楚你为什么需要这个。 BAT

Dim oShell 
Set oShell = WScript.CreateObject ("WScript.Shell") 
oShell.run "cmd.exe /K" 
Set oShell = Nothing 

/K参数将打开命令提示符窗口,并保持打开状态。您没有提供START的参数,并且在命令提示符打开时不执行任何命令,因此它应该执行您正在查找的内容。更多at:Run Method (Windows Script Host)

+0

抱歉,我正在使用命令提示符作为一个简单的.bat文件来调用,然后我可以将它应用于需要调用.bat文件的任何实例。我继续编辑问题以显示我想要调用的.bat文件。 – excelSU 2014-10-28 14:24:32