Vba aracılığıyla bir excel çalışma kitabı nasıl etkinleştirilir?

Aynı anda birden fazla çalışma kitabıyla çalıştığınızda yani aynı anda birden fazla açık çalışma kitabınız olduğunda, üzerinde çalışmak istediğiniz çalışma kitabını etkinleştirmenize yardımcı olabilecek yöntemi bilmeniz gerekir.

çalışma kitabını etkinleştir

VBA kullanarak bir çalışma kitabını etkinleştirmek için Workbook.Activate yöntemini kullanmanız gerekir. Bu yöntemde Workbook nesnesini kullanarak çalışma kitabı adını belirtmeniz gerekir. Ayrıca çalışma kitabı adı yerine çalışma kitabı numarasını kullanmanıza da olanak tanır, ancak yalnızca açık çalışma kitaplarına başvurabilirsiniz.

Bu derste bu yöntemi kullanmanın farklı yollarına bakacağız.

Çalışma kitabını etkinleştirme adımları

tip bağlayıcılar
  1. Ciltleyici nesnesini kullanmak için “Binders” yazın.
  2. Çalışma kitabının adını çift tırnak içinde belirtin.
  3. Özelliklerin ve yöntemlerin listesini almak için bir nokta (.) girin.
  4. Listeden Etkinleştirme yöntemini seçin veya siz de girebilirsiniz.
  5. Sonunda çalışma kitabını etkinleştirmek için kodu çalıştırın.
 Sub vba_activate_workbook() Workbooks("Book3").Activate End Sub

Not: Açık olmayan bir çalışma kitabını etkinleştirmeye çalışırsanız VBA bir hata görüntüler.

vba-bir-hata-gösterecek

İlgili: VBA Kullanarak Bir Elektronik Tabloyu Etkinleştirme

Yararlı bağlantılar: Makro çalıştırmaMakro kaydediciVisual Basic DüzenleyiciKişisel Makrolar El Kitabı

Numarayı kullanarak çalışma kitabını etkinleştirme

Birden fazla çalışma kitabınız açık olduğunda, bu çalışma kitaplarının tümü çalışma kitabı koleksiyonunun parçası haline gelir ve başvurabileceğiniz bir numaraya sahip olur ve ardından onunla etkinleştirme yöntemini kullanabilirsiniz. İşte kod:

 Sub vba_activate_workbook() Workbooks(2).Activate End Sub
numarayı kullanarak bir ciltleyiciyi etkinleştir

Var olmayan bir sayıyı kullanarak bir çalışma kitabını etkinleştirmeye çalışırsanız, VBA size bir Çalışma zamanı hatası ‘9’ (Abonelik Aralık Dışında) gösterecektir.

vba-çalışma zamanı-hatasını-9 gösterecek

Bu çalışma kitabını etkinleştir

ThisWorkbook özelliğini kullanarak kod yazdığınız çalışma kitabına başvurabilirsiniz. Diyelim ki aynı anda açık olan beş çalışma kitabınız var ama “Kitap1.xlsm” üzerinde çalışıyorsunuz, yani aşağıdaki kodu çalıştırdığınızda “Kitap1.xlsm” aktif hale gelecektir.

 Sub vba_activate_workbook() ThisWorkbook.Activate End Sub

Bir çalışma kitabını etkinleştirmeden önce kontrol edin

Dediğim gibi açık olmayan bir çalışma kitabını aktif etmeye çalıştığınızda VBA size hata gösteriyor. Bu sorunu çözmenin en iyi yolu, önce çalışma kitabının adını (açık olup olmadığını) kontrol edip ardından etkinleştirmektir.

 Sub vba_activate_workbook() Dim wb As Workbook For Each wb In Workbooks If wb.Name = "Book3.xlsx" Then wb.Activate MsgBox "Workbook found and activated" Exit Sub End If Next wb MsgBox "Not found" End Sub

Yukarıdaki kodu kullanarak bir çalışma kitabı adı belirleyebilirsiniz; bu, öncelikle bu çalışma kitabını tüm açık çalışma kitaplarında kontrol edecek ve çalışma kitabını bulursa etkinleştirecektir.

Yorumlar

  • Çalışma kitabı adını kullanırken doğru dosya uzantısını kullandığınızdan emin olun.
  • Henüz kaydedilmemiş bir çalışma kitabını etkinleştirmek istiyorsanız, dosya uzantısını eklemeden yalnızca o çalışma kitabının adını kullanmalısınız.

Yorum ekle

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir