• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

MsgBox YesNo

muratgunay48

Altın Üye
Katılım
10 Şubat 2010
Mesajlar
1,450
Excel Vers. ve Dili
Office 365 - Türkçe (64 bit)
Arkadaşlar, sayın hocalarım, bir dosyam var, hatta diğer dosyalarımda da böyle oluyor. InputBox ya da MsgBox neden klasörlerin arkasında açılıyor. Bunun bir yolu var mı?
Mesela koda bir satır eklemek gibi.
Şimdiden teşekkür ederim.
Saygılarımla.
 

Ekli dosyalar

  • Ekran görüntüsü 2026-03-14 045554.png
    Ekran görüntüsü 2026-03-14 045554.png
    74.3 KB · Görüntüleme: 3
Bu Excel VBA’da çok sık görülen bir durumdur. MsgBox veya InputBox, Explorer penceresinin arkasında kalır çünkü Excel aktif pencere değildir. Windows o anda Explorer’ı foreground window olarak görüyor.

MsgBox veya InputBox’tan önce Excel’i aktif yapın.
Kod:
AppActivate Application.Caption

Kod:
Sub Test()
    AppActivate Application.Caption    
    MsgBox "Devam edilsin mi?"

End Sub

veya
Kod:
MsgBox "Mesaj", vbSystemModal
 
Yeni bir Module açın ve bunu ekleyin:
Kod:
Public Sub FocusExcel()
    On Error Resume Next
    AppActivate Application.Caption
    DoEvents
End Sub

Artık tek satır eklemeniz yeterli
Her MsgBox veya InputBox'tan önce sadece bunu yazın:

FocusExcel

örnek
Kod:
Sub Test()

    FocusExcel
    MsgBox "Devam edilsin mi?"

End Sub

veya

Kod:
Sub Test()

    Dim cevap As String

    FocusExcel
    cevap = InputBox("Bir değer girin")

End Sub

veya genelde benim kullandığım
Kod:
Public Sub FocusExcel()
    On Error Resume Next
    Application.WindowState = xlNormal
    Application.Activate
    AppActivate Application.Caption
    DoEvents
End Sub
 
Geri
Üst