Shell "yourPath\BarTenderEXE", vbNormalFocus
'yourPath是exe的绝对路径
'以上是打开BarTenderEXE的命令
接下来还要自动打印就比较麻烦,如果你对命令行比较熟练那可以继续往下看,如果不是那就请到这里吧,打开D:\TMBTW之后请人手 *** 作打印吧。
后面我不知道BarTenderEXE是具体怎么 *** 作。。。所以大概可以这样:
一般具备打印功能的exe文件,需要打开文件(条码文件),大概在file - open 里面,然后打印是file-print(一般快捷键ctrl+p)
那么就简单了,打开了BarTenderEXE之后,接着发送键盘指令
alt - down - enter - 输入“D:\TMBTW” - enter - alt - down - p - enter
调用外部程序使用Shell语句,下面的实例是调用CMD命令打开DOS窗口并执行Dir命令,将浏览结果存入文件,然后用open语句打开文件,读入vba,实例中使用的是绝对路径,如果是相对路径用“&”表示盘符,您要调用计算器,并获取计算器的计算结果,仅调用外部程序是不行的,我尝试使用API函数钩子,结果是自己重新写一个计算器都没那么费神
Sub shellcall()
Shell "cmd /c dir c:\>c:\1aaatxt"
Open "c:\11sstxt" For Input As #1
Dim s As String
While Not EOF(1)
Line Input #1, s
DebugPrint s
Wend
Close #1
End Sub
Private Sub Command2_Click()
Dim x As Double 声明X的数据类型
x = MeText0Value X取值,取Text0的输入
s = 0 S清零
If x < 0 Or x <> Int(x) Then 判断,如果X小于0或者X不是整数
MsgBox ("请重新输入") 则,提示重新输入
Else 如果大于0而又是整数,则
For i = 1 To Len(x) 开始循环:从1到X的位数
a = Mid(x, i, 1) 给a赋值,逐次抽取x的每一位
Next i
MsgBox ("结果为" & s) 提示结果
a = Val(a) a转换为数值
s = s + a 结果累加
End If
End Sub
这个程式看起来,跑不出一个正确的结果,个人认为要修改如下:
Private Sub Command2_Click()
Dim x As Double
x = MeText0Value
s = 0
If x < 0 Or x <> Int(x) Then
MsgBox ("请重新输入")
exit sub ‘增加1句
Else
For i = 1 To Len(x)
a = Mid(x, i, 1)
a = Val(a) ’位置调整
s = s + a
Next i
MsgBox ("结果为" & s)
End If
End Sub
以上内容仅供参考!
sub fff()
Shell "C:\Users\Desktop\Stirlingexe C:\Users\Desktop\MapVersioninf" , vbNormalFocus
end sub
以上就是关于EXCEL VBA 启动其它应用程序问题全部的内容,包括:EXCEL VBA 启动其它应用程序问题、VBA中如何调用exe程序 如:我要用Excel2007 VBA 编程实现打开Caculator,并输入12+3=15,如何实现、VBA设计的程序怎么在外部直接打开等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)