Onde o VBA Debug.Print faz logon?

Respostas:

354

Onde você deseja ver a saída?

As mensagens enviadas via Debug.Printserão exibidas na janela imediata que você pode abrir pressionando Ctrl+G .

Você também pode ativar a chamada Janela imediata clicando em Exibir -> Janela imediata na barra de ferramentas do VBE

insira a descrição da imagem aqui

Dirk Vollmar
fonte
6
Isso é verdade se você estiver em um aplicativo de escritório compatível com VBA, mas se estiver usando via WSH, poderá ser necessário usar MsgBox ( shudder ) ou alguma técnica semelhante, pois a janela imediata não está disponível.
AJ.
85

Debug.Print saídas para a janela "Imediato".

Saída de Debug.Print para a janela Immediate

Além disso, você pode simplesmente digitar ?e depois uma instrução diretamente na janela imediata (e pressionar Enter) e exibir a saída logo abaixo, da seguinte forma:

simplesmente digite?  e, em seguida, uma declaração diretamente na janela imediata

Isso pode ser muito útil para gerar rapidamente a propriedade de um objeto ...

? myWidget.name

... para definir a propriedade de um objeto ...

myWidget.name = "thingy"

... ou até mesmo executar uma função ou linha de código, no modo de depuração:

Sheet1.MyFunction()

LimaNightHawk
fonte
7
lol, que nome não intuitivo. "Janela imediata" sempre me fez pensar na janela atual. Ou uma janela principal do aplicativo.
j riv
5
Como você pode digitar o código e ver os resultados "imediatamente", é possível ver por que eles o nomearam, em vez de uma lógica estranha em que "imediato" significa "atual".
Rick Henderson
3
Sim, enquanto qualquer pessoa de lógica estranha que, no entanto, imediatamente teve algum senso de terminologia imediata, poderia chamá-la imediatamente de "Console de depuração". Mas como o VBA é uma linguagem tão boa que você nunca comete um erro, nunca precisa depurar nada. Você só usa essa janela para demonstrar imediatamente as excelentes funções imediatas desse idioma imediato.
Palo
2
Oh, minha culpa: chamar uma janela que não pode conter imediatamente mais de 200 linhas de um "Console de Depuração" seria imediatamente um erro.
Palo