VBA Debug.Print nerede günlüğe kaydedilir?


Yanıtlar:


354

Çıktıyı nerede görmek istersiniz?

Üzerinden gönderilen mesajlar + Debug.Printtuşuna basarak açabileceğiniz hemen pencerede görüntülenir .CtrlG

Ayrıca VBE araç çubuğundaki Görünüm -> Anlık Pencere'yi tıklayarak Anlık Pencereyi etkinleştirebilirsiniz .

resim açıklamasını buraya girin


6
Bu, VBA'yı destekleyen bir ofis uygulamasındaysanız, ancak WSH aracılığıyla kullanıyorsanız, MsgBox ( shudder ) veya acil pencere kullanılamadığı için benzer bir teknik kullanmanız gerekebilir .
AJ.

85

Debug.Print "Anında" penceresine gönderir.

Debug.Print çıktıları Anında penceresine

Ayrıca, ?doğrudan pencereye bir deyim yazıp doğrudan yazabilir (ve ardından Enter tuşuna basabilirsiniz) ve çıktının hemen aşağıda görünmesini sağlayabilirsiniz:

basitçe yazın?  ve sonra doğrudan pencerenin içine bir deyim

Bu, bir nesnenin özelliğini hızlı bir şekilde çıktılamak için çok kullanışlı olabilir ...

? myWidget.name

... bir nesnenin özelliğini ayarlamak için ...

myWidget.name = "thingy"

... veya hata ayıklama modundayken bir işlev veya kod satırı yürütmek için:

Sheet1.MyFunction()


7
lol, ne kasıtsız bir isim. "Hemen pencere" her zaman geçerli pencereyi düşündürdü. Veya bir ana uygulama penceresi.
j riv

5
Kod yazabildiğiniz ve sonuçları "hemen" görebildiğiniz için, neden "hemen" "geçerli" anlamına geldiği garip bir mantık yerine bunu adlandırdıklarını görebilirsiniz.
Rick Henderson

3
Evet, ancak hemen terminoloji için bir anlam ifade eden herhangi bir garip-mantıksal kişi buna derhal "Hata Ayıklama Konsolu" diyebilir. Ancak VBA öyle büyük bir dil olduğundan, asla bir hata yapmazsınız, hiçbir zaman hata ayıklamanız gerekmez. Bu pencereyi yalnızca bu anında dilin hemen mükemmel işlevlerini hemen göstermek için kullanırsınız.
Palo

2
Oh, benim hatam: hemen 200'den fazla satır tutamayan bir pencere çağırmak bir "Hata Ayıklama Konsolu" hemen bir gaf olur.
Palo
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.