Bir Msgbox'ı diğer uygulamalarda nasıl açabilirim?


1

Birkaç tablodaki binlerce satırı ele alan ve bazı kopyala / yapıştır / analiz et / birleştir ... işlemlerini yapan bir Excel makrosu var. tam olarak çalıştırmak için neredeyse 10 dakika sürer.

Ekledim MsgBox "Job Done" Sonunda, açılan pencerenin yalnızca Excel etkin pencere ise görünmesidir. Mesela Outlook’taysam, açılan pencere açılmayacak ve avantajını büyük ölçüde sınırlandıracak.

Açılması için bir şey ayarlayabilir miyim?

Yanıtlar:


0

Farklı düşün. Dikkatinizi çekmenin başka yolları da var. Msgbox

Bir komut satırı penceresi aç hangisi üstte

Sub Sample()
  RetVal = Shell("CMD /k echo Hello World", vbNormalFocus)
End Sub

Not: Bu VBA makronuzu durdurmaz. Ayrı bir işlem olarak çalışıyor

A oyna bip ses

Sub Sample()
  Beep
End Sub

Not: Varsayılan bip Bunun çalışması için ilgili bir ses olmalı

Dikkat çekmek için not defteri açın

Sub Sample()      
  Set WScript = CreateObject("WScript.Shell")
  WScript.Run "%windir%\notepad", 1
End Sub

Büyük yazı hakkında daha fazla bilgi edinin Windows Komut Dosyası Sistemi Ana Programını Programlama . Odak davranışı ile değiştirilebilir intWindowStyle


İlk çözümü seviyorum, özellikle makroyu durdurmuyor, kodu dev aşamasında çalıştırırken bazı adımları işaretlemek için de kullanılabilir
Memes

@Memes Sadece üçüncü yöntemin de makroyu durdurmadığını / durdurmadığını belirtmek istiyorum.
nixda

Evet, anladım, ama çok daha az zarif: "normal" bir kullanıcı sadece "hey, ne f $ &%; notepad açmamışım !!!" diyerek bitebilir.
Memes

1

Peki ya

vbSystemModal   4096    System modal; all applications are suspended until the user responds to the message box.

Görmek MsgBox İşlevi

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.