vba调用linux shell,调用命令提示符并通过VBA中的Shell Exec执行命令

我试图在VBA Excel中使用Shell脚本在命令提示符上执行命令。当我在命令提示符下执行此命令时,它通过打印一个数字作为输出。但是当我在脚本中调用相同的命令时,它不会在消息框中显示此数字。调用命令提示符并通过VBA中的Shell Exec执行命令

Sub Button6_Click()

Dim oShell As Object

Dim objExecObject As Object

Set oShell = CreateObject("WScript.Shell")

Set objExecObject = oShell.Exec("cmd /c convert test2.jpg -fill black +opaque white -fill white -opaque white -print %[fx:w*h*mean]")

MsgBox (objExecObject.StdOut.ReadAll)

End Sub

我认为问题与Exec函数中的参数有多个单词。所以我试图通过串联一个字符串如下所示。但是这也行不通。

Dim command As String

command = "convert test2.jpg -fill black +opaque white -fill white -opaque white -print %[fx:w*h*mean] null:"

Set objExecObject = oShell.Exec("cmd /c " & command)

似乎没有运行时错误,并且消息框总是返回空白而不打印数字。 FOR CLARITY,convert命令是ImageMagick提供的一个函数。

请告诉我如何在命令提示符下运行convert命令,并在消息框中输出命令提示符。

非常感谢。

+0

这工作。 Set objExecObject = oShell.Exec(“cmd/c convert test2.jpg -fill black + opaque white -fill white -opaque white -print%[fx:w * h * mean] null:”) null的命令是问题。还要确保文件的路径是绝对的,在我的情况下不是问题。 –

2014-09-29 15:04:55

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值