Excel'de makro nasıl çalıştırılır?
Visual Basic for Applications (VBA), Microsoft Excel’in yanı sıra Word ve Access gibi diğer Microsoft Office uygulamalarına entegre bir programlama dilidir. Excel’deki VBA kodu birkaç nedenden dolayı önemlidir:
Excel’de VBA kodunun önemi
Tekrarlanan görevlerin otomasyonu
VBA, kullanıcıların Excel’de tekrarlanan ve zaman alan görevleri otomatikleştirmesine olanak tanır. Bu, veri işleme, biçimlendirme ve rapor oluşturmadan karmaşık hesaplamalara kadar her şeyi içerebilir. VBA kodu yazarak, yalnızca bir tuşa tıklayarak bu görevleri gerçekleştirecek makrolar oluşturabilirsiniz.
Geliştirilmiş işlevsellik:
VBA, kullanıcıların Excel’in işlevselliğini yerleşik özelliklerinin ötesine genişletmesine olanak tanır. Kullanıcılarla etkileşimde bulunmak ve daha kullanıcı dostu bir deneyim sağlamak için özel işlevler, kullanıcı formları ve iletişim kutuları oluşturabilirsiniz.
Veri analizi ve raporlama:
VBA ile gelişmiş veri analizi ve raporlama araçları geliştirebilirsiniz. Bu, verileri içe aktarma, temizleme ve işleme sürecinin otomatikleştirilmesinin yanı sıra kapsamlı raporlar ve gösterge tabloları oluşturulmasını da içerebilir.
Diğer uygulamalarla entegrasyon:
VBA, Excel ile diğer Microsoft Office uygulamalarının yanı sıra harici uygulamalarla entegrasyonu kolaylaştırır. Bu, özellikle farklı yazılım araçları veya birden fazla uygulamayı içeren otomasyon süreçleri arasında veri aktarmanız gerektiğinde kullanışlıdır.
Hata işleme ve hata ayıklama:
VBA, güçlü hata işleme yetenekleri sağlayarak, hataları incelikle işleyen ve anlamlı hata mesajları sağlayan kod yazmanıza olanak tanır. Bu, kodunuzda sorun gidermeyi ve hata ayıklamayı kolaylaştırır.
Ve VBA ile pek çok şey yapılabilir. Yeni başlayanlar için VBA kodu yazmak biraz zor olabilir, ancak bunu nasıl yapacağınız aşağıda açıklanmıştır.
1. Listeden bir makro çalıştırın
Geliştirici sekmesinden çalışma kitabınızda veya KİŞİSEL.XLSB’de bulunan MAKROS listesine erişebilirsiniz. Excel’de makro çalıştırmak için aşağıdaki adımları takip edebilirsiniz:
- “Geliştirici” sekmesindeki makro düğmesine tıklayın ve makro listesini açın.
- Bu MAKROS listesinde, kişisel makro çalışma kitabınız da dahil olmak üzere açık çalışma kitaplarınızda bulunan tüm makrolara sahip olacaksınız.
- Çalıştırmak istediğiniz makroyu seçin ve “ÇALIŞTIR” butonuna tıklayın.
Çalıştır düğmesine tıkladığınızda makroyu çalıştırır ve iletişim kutusunu kapatır.
2. Kısayol tuşuyla bir makro çalıştırın
Makroyu klavye kısayol tuşunu kullanarak da çalıştırabilirsiniz. Genellikle bir makro kaydettiğinizde sizden o makroyu çalıştırmak için kullanabileceğiniz bir kısayol tuşu tanımlamanız istenir.
Ve eğer bir makro yazarsanız, makro listesinden bir kısayol tuşu ayarlayabilirsiniz.
- Kısayol tuşunu ayarlamak istediğiniz makronun adını seçin ve seçeneklere tıklayın.
- Bundan sonra giriş kutusunun içine tıklayın ve ayarlamak istediğiniz kısayol tuşuna basın.
3. Hızlı Erişim Araç Çubuğuna Makro Düğmesi Ekleyin
Bir makroyu çalıştırmak için Hızlı Erişim Araç Çubuğuna bir düğme de ekleyebilirsiniz. Aşağıdaki adımları kullanabilirsiniz:
- İlk olarak, Hızlı Erişim Araç Çubuğu’ndaki küçük açılır listeye tıklayın ve daha fazla komut seçin; bu sizi Hızlı Erişim Araç Çubuğunu özelleştirmek için gerçek seçeneklere götürecektir.
- Şimdi buradan doğruluk komut makrolarını seçin ve eklemek istediğiniz makroyu seçin, ardından Ekle düğmesine tıklayın; hızlı erişim araç çubuğu yapmak için o makroyu ekleyecektir.
- Sonunda Tamam’ı tıklayın.
Ve eklediğiniz makro için bir düğmeniz olacak.
4. Şekle makro ekleme
Diyelim ki işinizde sıklıkla kullanmanız gereken bazı VBA kodunuz var. Bu durumda bir düğme oluşturabilir ve bu makroyu ona atayabilirsiniz.
- Öncelikle Ekle sekmesinden ➜ Çizimler ➜ Şekiller’den basit bir şekil ekleyin. Düğme olarak kullanmak istediğiniz şekillerden birini seçin.
- Daha sonra bu şekle sağ tıklayın ve “Makro Ata” seçeneğini seçin.
- Şimdi makro listesinden şekle atamak istediğiniz makroyu seçin.
Artık bu şekle her tıkladığınızda atadığınız makro çalışacaktır.
5. Form kontrol düğmesine bir makro atayın
Bir şekli kullanmanın yanı sıra, bir makroyu çalıştırmak için bir kontrol düğmesini de kullanabilirsiniz.
- Öncelikle Geliştirici sekmesine ve Kontroller grubuna gidin, ardından ekle’ye tıklayın. Ekle açılır kutusunda, eklemek için düğmeye tıklayın.
- Bundan sonra, seçebileceğiniz makroların listesini size gösterecektir.
- Makroyu seçip Tamam’ı tıkladığınızda, e-tabloda bir düğme göreceksiniz (düğme metnini ona anlamlı bir ad verecek şekilde değiştirebilirsiniz).
6. Bir çalışma kitabını açın ve kapatın
Ayrıca bir çalışma kitabını açarken ve kapatırken çalıştırılacak bir makro da oluşturabilirsiniz. Bu, bir çalışma kitabını açtığınızda veya kapattığınızda atadığınız makronun yürütüleceği anlamına gelir. Bunu yapmak için “auto_open” ve “auto_close” kullanmanız gerekir.
Diyelim ki çalışma kitabı açıldığında çalışacak bir makro atamak istiyorsunuz. Bu makronun adı olarak auto_open kullanmalısınız.
Sub auto_open() Range("A1").Value = Now End Sub
Artık bu mikro, çalışma kitabını açıp geçerli tarihi girdiğinizde, ardından etkin sayfanın A1 hücresine girdiğinizde çalışacaktır.
Benzer şekilde çalışma kitabını kapatırken bu makroyu oluşturmak için “auto_close” komutunu da kullanabilirsiniz.
7. Bir çalışma sayfasını etkinleştirin ve devre dışı bırakın
Tıpkı çalışma kitabının bir çalışma sayfasını etkinleştirme ve devre dışı bırakma konusunda bir makro çalıştırabileceği gibi. Ve bu durumda bu makroyu bu çalışma sayfasının kod penceresine eklemeniz gerekir.
- Öncelikle elektronik tablo sekmesine sağ tıklayın ve “Kodu Göster” seçeneğine tıklayın.
- Şimdi kod penceresinde soldaki açılır menüden çalışma sayfasını seçin. Devre dışı bırakmak istediğinizde; “Worksheet_Deactivate” adında yeni bir abone alacaksınız.
- Şimdi, çalışma sayfasını devre dışı bıraktığınızda çalıştırmak istediğiniz kodu bu prosedüre eklemeniz gerekiyor.
Private Sub Worksheet_Deactivate() Range(“A1”).Value = Now End Sub
Bir çalışma sayfasını etkinleştirdiğinizde bir makroyu çalıştırmak istiyorsanız, açılır listeden devre dışı bırakmak yerine etkinleştirmeyi seçin.
Private Sub Worksheet_Activate() Range(“A1”).Value = Now End Sub
8. Çalışma sayfasındaki bir değişiklikte makro çalıştırın
Çalışma sayfasında değişiklik yaptığınızda da makro çalıştırabilirsiniz. Örneğin bir hücreye değer girdiğinizde veya hücreden değer sildiğinizde.
Bunu yapmak için, özelliği bir kez daha e-tablonun kod penceresine girmeniz ve açılır listeden “Seçimi Düzenle” seçeneğini seçmeniz gerekir.
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Range(“A1”).Value = “Last Updated: ” & Format(Now, “dd-mmm-yy hh:mm:ss Am/pm”) End Sub
9. Başka bir prosedürde
Çağrı ifadesini kullanarak başka bir prosedürden bir makro çalıştırabilirsiniz. Çağrı anahtar sözcüğünü ve ardından makronun adını kullanın.
Sub myStrikeThrough() If Selection.Value = “Yes” Then Selection.Value = “No” Else Selection.Value = “Yes” End If End Sub Sub markDone() Call myStrikeThrough Selection.Font.Bold = True End Sub
“markDone” makrosunu çalıştırdığınızda, önce “mystrikethrough” makrosunu çalıştırır, ardından seçim yazı tipini kalın yapar.
10. Bir makro planlayın
Ayrıca bir makroyu belirli bir zamanda çalışacak şekilde zamanlayabilirsiniz. Diyelim ki sabah 8:30’da bir makro çalıştırmak istiyorsunuz, saati siz belirtin biz çalıştıralım.
Bunu yapmak için Application.OnTime yöntemini kullanmanız gerekir. Diyelim ki bir “myCode” makronuz var, aşağıdaki gibi bir kod yazarak onu 8:30’da çalıştırabilirsiniz.
Application.OnTime TimeValue("08:30:00"), "myCode"