none
Pegar a Variável do Windows e ler pelo VBA RRS feed

  • Pergunta

  • Pessoal tenho uma grande duvida e não sei se é possível! Criei uma variável do Windows e preciso que pegar ela pelo VBA. 

    Abrindo o Prompt de comando eu executo o echo %MINHAVARIAVEL%, OK OTIMO, agora como eu pego pela pelo VBA? Preciso usar ela é um dos processos meu, verifiquei que pelo vBA conseguimos executar o comandos via .bat pelo Shell, porém não consigo é ler essa NO CÓDIGO do VBA.

    Private Sub A()

    Dim MINHAVARIAVEL As String, Gav As String
        
        Open "VBAEXEC.bat" For Output As #1
        Print #1, "echo %MINHAVARIAVEL%"
        Print #1, "PAUSE"
        Close #1
        Shell "VBAEXEC.bat", vbNormalFocus
        
       
    End Sub

    Eu precisaria criar uma variável no Windows (DOS) e ao declarar no código do VBA = Tipo MINHAVARIAVEL, para possa usar com algum parâmetro ou senha de algum programa. Alguém já executou um codigo assim?

    sábado, 27 de março de 2021 12:43

Todas as Respostas

  • Olá, LucianodaMata

    Tente a função Environ:

    Dim X As String
    X = Environ("MINHAVARIAVEL")

    domingo, 28 de março de 2021 05:04
  • Elubra, muito obrigado! Foi na primeira. Muito bom. Outra pergunta, preciso que tire as aspas duplas dessa variável, mesmo aplicando o Replace não está replicando, tem alguma sugestão?

    SENHA = Environ("MINHAVARIAVEL")
    NOVASENHA = Replace(SENHA, """", "")

    Tks.

    terça-feira, 30 de março de 2021 21:48
  • Sua variável vem do DOS com aspas duplas? Estranho isso. Acho que não. De qualquer forma, exiba SENHA com uma Msgbox ou com Debug.Print pra certificar-se.

    Se isso de fato acontecer, o uso do Replace da forma como vc usou estaria correto e deveria sim retirar as aspas duplas.

    Não sei qual o problema vc está vivenciando em seu modelo, mas parece não ser nesse quesito relatado.

    quarta-feira, 31 de março de 2021 10:54
  • Elubra, refiz agora os códigos novamente + variável do DOS e apliquei os Debug, está perfeito é possível que digitei algum sintaxe errada anteriormente, muito obrigado pela ajuda. Abs.
    quarta-feira, 31 de março de 2021 21:21