none
Como executar um comando do CMD no Excel, e retornar o resultado no Excel RRS feed

  • Pergunta

  • Tentei usar esse método mais no resultado fica só aparecendo uns Números totalmente aleatórios. 

    Sub Teste()
        Dim b As String
        b = Shell("ipconfig")
        TextBox1 = b
    End Sub

    quinta-feira, 12 de março de 2020 15:28

Todas as Respostas

  • Olá, meu amigo!

    Há um tempo atrás eu tive o mesmo problema. Eu custei a achar uma boa solução, mas vou abaixo está mastigado. Resumidamente, basta você chamar essa função e passar como parâmetro o comando que deseja.

    Public Function ExecShellCmd(byref FuncExec)
        Dim wsh
        Dim saida
        
        'Create object for Shell command execution
        Set wsh = CreateObject("WScript.Shell")
        
        'Run Excel VBA shell command and get the output string
        saida = wsh.exec(FuncExec).stdout.ReadAll
    
        If saida = "" Then saida = wsh.exec(FuncExec).stderr.ReadAll
    
        'Return the Output of Command Prompt
        ExecShellCmd = saida
    End Function


    quinta-feira, 12 de março de 2020 17:36
  • Ok entendi o código, só que não conseguir chamar essa função no VBA.

    E também queria chamar essa função em um botão, e ser exibida em Textbox

    quinta-feira, 12 de março de 2020 18:50
  • Olá, meu amigo!

    Há um tempo atrás eu tive o mesmo problema. Eu custei a achar uma boa solução, mas vou abaixo está mastigado. Resumidamente, basta você chamar essa função e passar como parâmetro o comando que deseja.

    Public Function ExecShellCmd(byref FuncExec)
        Dim wsh
        Dim saida
        
        'Create object for Shell command execution
        Set wsh = CreateObject("WScript.Shell")
        
        'Run Excel VBA shell command and get the output string
        saida = wsh.exec(FuncExec).stdout.ReadAll
    
        If saida = "" Then saida = wsh.exec(FuncExec).stderr.ReadAll
    
        'Return the Output of Command Prompt
        ExecShellCmd = saida
    End Function



    sexta-feira, 13 de março de 2020 00:05
  • Posso ver como você tentou chamar a função?
    segunda-feira, 16 de março de 2020 15:52