Como clicar em uma célula do Excel e executar uma linha de comando contida nessa célula ou em uma célula adjacente?

0

Estou tentando descobrir o seguinte:

  • Eu tenho uma planilha do Excel na qual eu alimentei alguns parâmetros diariamente e concatena esses para executar um aplicativo na linha de comando.
  • A planilha gera um total de 28 comandos (linhas), além do primeiro que chega à pasta do aplicativo
  • Então eu tenho que copiar todos os comandos e colar em um .bat e executar.

Eu desejo:

  • Eu poderia adicionar um botão que executa todos os 29 comandos (linhas) com um clique;
  • Clique em qualquer uma das 28 células de comando para executar apenas esse comando (o clique é muito parecido com este exemplo, mas o clique deve executar o que está nessa célula ...)

Aqui, um exemplo da folha concatenada de onde copio e colo no arquivo .bat

Os parâmetros que são diferentes entre os comandos estão mais à direita, não mostrados aqui:

    
por Fernando Mattos Santana Batist 09.09.2016 / 00:07

1 resposta

0

Eu não vou escrever essa coisa toda, porque eu não sei como são seus arquivos ou estrutura. Tudo o que você precisa fazer é carregar as informações da planilha do Excel no código e deixar o loop ir. Ele adicionará cada linha ao arquivo em lotes. Você pode adicionar um shell para executá-lo automaticamente ... mas, se precisar, poderá precisar de uma pequena pausa ou atraso.

    Sub Blah()


    Dim fso As Scripting.FileSystemObject
    Dim F As File
    Dim F2 As TextStream
    Dim BatchFile As String
    'Also, need to load in excel stuff up here.

    BatchFile = ("C:\Users\" & Environ$("Username") & "\Documents\FileName.bat")
    Set F2 = fso.CreateTextFile("C:\Users\" & Environ$("Username") & "\Documents\FileName.bat")
    RowNum = 1
    On Error GoTo Errs:
    S = ""
    Do Until Worksheet.Cells(RowNum, 1).value = ""

    S = S & workshee.Cells(RowNum, 1) & Chr(13) & Chr(10)

    RowNum = RowNum + 1
    Loop
Errs:

    F2.Write S

    End Sub
    
por 20.09.2016 / 20:42