Bir çalışma kitabının vba aracılığıyla açılıp açılmadığı nasıl kontrol edilir?
Herhangi bir VBA kodunu kullanarak bir çalışma kitabının açık olup olmadığını kontrol etmek için, o anda açık olan tüm çalışma kitapları arasında dolaşabilen FOR EACH döngüsünü kullanmanız ve bahsettiğiniz adla her çalışma kitabının adını kontrol etmeniz gerekir. Döngünün sonucunu almak için bir mesaj kutusu kullanabilirsiniz. Veya sonucu bir hücreye girmek için kodu da yapabilirsiniz.
ÇALIŞMA KİTABININ AÇIK OLUP OLMADIĞINI kontrol edin
- Öncelikle döngü oluşturmak için kodda kullanılacak değişkenleri tanımlamanız gerekir.
- Aramak istediğiniz çalışma kitabının adını almak için bir giriş kutusu kullanın.
- Tüm açık çalışma kitaplarını gözden geçirmek için döngüyü başlatın.
- Giriş kutusuna girdiğiniz adla çalışma kitabı adını kontrol etmek için IF STATEMENT ile kod yazın ve ad eşleştiğinde çalışma kitabını etkinleştirir, çalışma kitabının bulunduğunu belirten bir mesaj kutusu görüntüler ve prosedürden çıkar.
- Sonunda döngüyü tamamlayın ve hiçbir şey bulunamazsa bir mesaj kutusu görüntülemek için bir mesaj kutusu kullanın.
Yararlı bağlantılar: Makro çalıştırma – Makro kaydedici – Visual Basic Düzenleyici – Kişisel Makrolar El Kitabı
İşte kodun tamamı.
Sub vba_check_workbook() Dim WB As Workbook Dim myWB As String myWB = InputBox(Prompt:="Enter the workbook name.") For Each WB In Workbooks If WB.Name = myWB Then WB.Activate MsgBox "Workbook Found!" Exit Sub End If Next WB MsgBox "Not Found" End Sub