Excel'de VBA: Uygulamalar için Visual Basic Nedir, Nasıl Kullanılır?
Everybody in this country should learn how to program a computer... because it teaches you how to think." -Steve Jobs
Steve Jobs'un bilgece sözlerini genişletmek ve dünyadaki herkesin bilgisayar programlamayı öğrenmesi gerektiğini söylemek istiyorum. Mutlaka bir programcı olarak çalışmanız veya program yazmanız gerekmeyebilir ancak size nasıl düşünmeniz gerektiğini öğretecektir.
Uygulamalar için Visual Basic (VBA) nedir?
Uygulamalar için Visual Basic (VBA) tarafından uygulanan olaya dayalı bir programlama dilidir. Microsoft Office uygulamaları geliştirmek. VBA, otomasyon süreçlerinin geliştirilmesine yardımcı olur, Windows API ve kullanıcı tanımlı işlevler. Ayrıca ana bilgisayar uygulamalarının kullanıcı arayüzü özelliklerini değiştirmenize de olanak tanır.
Daha fazla ayrıntıya girmeden önce, bilgisayar programlamanın basit bir dille ne olduğuna bakalım. Bir hizmetçiniz olduğunu varsayalım. Hizmetçinin evi temizlemesini ve çamaşırları yıkamasını istiyorsanız, ona ne yapması gerektiğini söyleyin ve o da sizin için işi yapsın. Bir bilgisayarla çalışırken, belirli görevleri yerine getirmek isteyeceksiniz. Hizmetçiye ev işlerini yapmasını söylediğiniz gibi, bilgisayara da sizin için görevleri yapmasını söyleyebilirsiniz.
Bilgisayara sizin için ne yapmasını istediğinizi söyleme sürecine bilgisayar programlama denir. Hizmetçiye ne yapması gerektiğini söylemek için İngilizce kullandığınız gibi, bilgisayara ne yapması gerektiğini söylemek için de İngilizce benzeri ifadeler kullanabilirsiniz. İngilizce benzeri ifadeler yüksek seviyeli diller kategorisine girer. VBA, Excel'i tüm güçlü iradenize göre şekillendirmek için kullanabileceğiniz üst düzey bir dildir.
VBA aslında Visual Basic 6.0 BASIC'in bir alt kümesidir. Byeni başlayanlar AÇok Amaçlı Ssembolik Instruction Cgazel.
Neden VBA?
VBA, çeşitli uygulamalar oluşturmaya yönelik talimatlar yazmak için İngilizce benzeri ifadeleri kullanmanızı sağlar. VBA'nın öğrenilmesi kolaydır ve arayüz kontrollerini sürükleyip bırakmanız gereken, kullanımı kolay bir Kullanıcı Arayüzüne sahiptir. Ayrıca Excel'in istediğiniz gibi davranmasını sağlayarak işlevselliğini geliştirmenize de olanak tanır.
Excel'de VBA'nın Kişisel ve İş Uygulamaları
Kişisel kullanım için, rutin görevlerinizin çoğunu otomatikleştirecek basit makrolar için kullanabilirsiniz. Bunu nasıl başarabileceğiniz hakkında daha fazla bilgi için Makrolar hakkındaki makaleyi okuyun.
İş amaçlı kullanım için excel ve VBA tarafından desteklenen eksiksiz ve güçlü programlar oluşturabilirsiniz. Bu yaklaşımın avantajı, excel'in güçlü özelliklerinden kendi özel programlarınızda yararlanabilmenizdir.
Uygulamalar için Visual Basic'e Giriş
Herhangi bir kod yazabilmemiz için öncelikle temelleri bilmemiz gerekir. Aşağıdaki temeller başlamanıza yardımcı olacaktır.
- Değişken – lisede cebiri öğrendik. x = 2 ve y = 1 olmak üzere (x + 3y)'yi bulun. Bu ifadede x ve y değişkendir. Bu örnekte olduğu gibi bunlara herhangi bir sayı, yani sırasıyla 1 ve 3 atanabilir. Sırasıyla 4 ve 2 diyecek şekilde de değiştirilebilirler. Değişkenler kısaca hafıza konumlarıdır. VBA Excel ile çalışırken cebir derslerinde olduğu gibi değişkenleri de bildirmeniz gerekecektir.
-
Değişken oluşturma kuralları
- Ayrılmış sözcükler kullanmayın; öğrenci olarak çalışıyorsanız öğretim görevlisi veya müdür unvanını kullanamazsınız. Bu unvanlar öğretim elemanlarına ve okul yetkililerine aittir. Ayrılmış kelimeler, Excel VBA'da özel anlamı olan kelimelerdir ve bu nedenle bunları değişken adı olarak kullanamazsınız.
- Değişken adları boşluk içeremez; ilk sayı adlı bir değişkeni tanımlayamazsınız. FirstNumber veya First_number'ı kullanabilirsiniz.
- Açıklayıcı adlar kullanın; bir değişkene kendi adınızı vermek çok caziptir ancak bundan kaçının. Açıklayıcı adlar (örneğin miktar, fiyat, ara toplam vb.) kullanın; bu, Excel VBA kodunuzun okunmasını kolaylaştıracaktır.
-
Aritmetik operatörler – Kurallar Brackets Bölme Çarpma Toplama ve Çıkarma (BODMAS) kuralları geçerlidir; bu nedenle birden fazla farklı aritmetik işleç kullanan ifadelerle çalışırken bunları uygulamayı unutmayın. Tıpkı excel'de olduğu gibi kullanabilirsiniz
- + ekleme için
- – çıkarma için
- * çarpma için
- / bölme için.
-
Mantıksal operatörler – Önceki eğitimlerde ele alınan mantıksal operatörler kavramı, VBA ile çalışırken de geçerlidir. Bunlar şunları içerir:
- If ifadeleri
- OR
- DEĞİL
- VE
- DOĞRU
- YANLIŞ
Geliştirici Sekmesi Nasıl Etkinleştirilir
Excel'de geliştirici sekmesinin nasıl etkinleştirileceğine ilişkin adım adım süreç aşağıda verilmiştir:
- Yeni bir çalışma kitabı oluştur
- Şerit başlat düğmesine tıklayın
- Ürünü Görüntüle
- Şeridi özelleştir'e tıklayın
- Aşağıdaki resimde gösterildiği gibi geliştirici onay kutusunu seçin
- Tamam'ı tıklayın.
Artık şeritte GELİŞTİRİCİ sekmesini görebileceksiniz
VBA Merhaba Dünya!
Şimdi VBA programlama dilinde nasıl programlanacağını göstereceğiz. VBA'daki tüm programlar "Sub" ile başlamalı ve "End sub" ile bitmelidir. Burada ad, programınıza atamak istediğiniz addır. Sub ise eğitimin sonraki bölümünde öğreneceğimiz bir alt rutini ifade eder.
Sub name() . . . End Sub
Kullanıcının adını soran bir giriş kutusu görüntüleyen ve ardından bir karşılama mesajı görüntüleyen temel bir VBA programı oluşturacağız
Bu eğitimde, aşağıdaki eğitimi tamamladığınızı varsayarız: Excel'deki makrolar ve excel'de GELİŞTİRİCİ sekmesini etkinleştirdiniz.
- Yeni bir çalışma kitabı oluştur
- Excel makrosu etkin çalışma sayfası biçiminde *.xlsm olarak kaydedin
- GELİŞTİRİCİ sekmesine tıklayın
- Kontroller şerit çubuğunun altındaki EKLE açılır kutusuna tıklayın
- Aşağıdaki resimde gösterildiği gibi bir komut düğmesi seçin
Komut düğmesini çalışma sayfasında herhangi bir yere çizin
Aşağıdaki iletişim penceresini göreceksiniz
- Makro adını btnHelloWorld_Click olarak yeniden adlandırın
- Yeni düğmeye tıklayın
- Aşağıdaki VBA kod penceresini göreceksiniz
Aşağıdaki talimat kodlarını girin
Dim name As String name = InputBox("Enter your name") MsgBox "Hello " + name
İŞTE,
- “Adı Dize olarak karart” name adında bir değişken oluşturur. Değişken metin, sayısal ve diğer karakterleri kabul edecektir çünkü onu bir dize olarak tanımladık
- “isim = GirişBox("Adınızı giriniz")" yerleşik Giriş işlevini çağırırBox Adınızı girin başlıklı bir pencere görüntüleyen. Girilen ad daha sonra ad değişkeninde saklanır.
- "msgBox “Merhaba” + isim” yerleşik işlevi çağırır MsgBox Merhaba ve girilen adı görüntüleyen.
Kod pencerenizin tamamı artık aşağıdaki gibi görünmelidir
- Kod penceresini kapat
- Düğme 1'e sağ tıklayın ve metni düzenle'yi seçin
- Giriş Merhaba deyin
- Merhaba Deyin'e tıklayın
- Aşağıdaki giriş kutusunu alacaksınız
- Adınızı girin, yani Jordan
- Aşağıdaki mesaj kutusunu alacaksınız
Tebrikler, excel'de ilk VBA programınızı oluşturdunuz
Excel'de basit bir EMI hesaplayıcısı oluşturmanın adım adım örneği
Bu eğitim egzersizinde, EMI'yi hesaplayan basit bir program oluşturacağız. EMI, Equalated Monthly Instalment'ın kısaltmasıdır. Kredi aldığınızda geri ödediğiniz aylık tutardır. Aşağıdaki resim, EMI'yi hesaplama formülünü göstermektedir.
Yukarıdaki formül karmaşıktır ve Excel'de yazılabilir. İyi haber şu ki Excel yukarıdaki sorunu zaten halletti. Yukarıdakini hesaplamak için PMT işlevini kullanabilirsiniz.
PMT işlevi aşağıdaki gibi çalışır
=PMT(rate,nper,pv)
İŞTE,
- "Oran" bu aylık ücrettir. Faiz oranının yıllık ödeme sayısına bölünmesiyle elde edilir
- “hayır” toplam ödeme sayısıdır. Kredi vadesinin yıllık ödeme sayısıyla çarpımıdır
- “pv” bugünkü değeri. Bu gerçek kredi tutarıdır
Aşağıda gösterildiği gibi Excel hücrelerini kullanarak GUI'yi oluşturun
7. ve 8. satırların arasına bir komut düğmesi ekleyin
Düğmeye makro adını verin btnCalculateEMI_Click
Düzenle düğmesine tıklayın
Aşağıdaki kodu girin
Dim monthly_rate As Single, loan_amount As Double, number_of_periods As Single, emi As Double monthly_rate = Range("B6").Value / Range("B5").Value loan_amount = Range("B3").Value number_of_periods = Range("B4").Value * Range("B5").Value emi = WorksheetFunction.Pmt(monthly_rate, number_of_periods, -loan_amount) Range("B9").Value = emi
İŞTE,
- “Aylık_oranı Tek Olarak Kıs,…” Dim tanımlamak için kullanılan anahtar kelimedir VBA'daki değişkenler, aylık_oran değişkenin adı, Tek ise değişkenin sayı kabul edeceği anlamına gelen veri türüdür.
- “aylık_oran = Aralık(“B6”).Değer / Aralık(“B5″).Değer” Aralık, VBA'dan excel hücrelerine erişmek için kullanılan işlevdir, Aralık(“B6”). Değer, B6'daki değere referans yapar
- “Çalışma SayfasıFunction.Pmt(…)” WorksheetFunction, excel'deki tüm işlevlere erişmek için kullanılan işlevdir
Aşağıdaki görüntü tam kaynak kodunu göstermektedir
- Kaydet'e tıklayın ve kod penceresini kapatın
- Aşağıdaki animasyonlu resimde gösterildiği gibi programınızı test edin
Excel Örneğinde VBA nasıl kullanılır?
Aşağıdaki adımlar Excel'de VBA'nın nasıl kullanılacağını açıklayacaktır.
) 1 Adım VBA düzenleyicinizi açın
Ana menüdeki Geliştirici sekmesi altında “Visual Basic” simgesine tıklayın, VBA düzenleyiciniz açılacaktır.
) 2 Adım Excel sayfasını seçin ve Double çalışma sayfasına tıklayın
Kodu çalıştırmak istediğiniz Excel sayfasını seçebileceğiniz bir VBA düzenleyicisi açılacaktır. VBA düzenleyicisini açmak için çalışma sayfasına çift tıklayın.
Klasörün sağ tarafında bir VBA düzenleyicisi açılacaktır. Beyaz bir alan gibi görünecek.
) 3 Adım Mesajda görüntülemek istediğiniz her şeyi yazınBox
Bu adımda ilk VBA programımızı göreceğiz. Programımızı okumak ve görüntülemek için bir nesneye ihtiyacımız var. VBA'da bir Msj'deki nesne veya ortamBox.
- Önce “Sub” ve ardından “program adınızı” yazın (Guru99)
- Mesajda görüntülemek istediğiniz her şeyi yazınBox (guru99-öğrenmek eğlencelidir)
- Programı End Sub ile sonlandırın
) 4 Adım Düzenleyicinin üst kısmındaki yeşil çalıştır düğmesine tıklayın
Bir sonraki adımda editör menüsünün üst kısmındaki yeşil çalıştır butonuna tıklayarak bu kodu çalıştırmalısınız.
) 5 Adım Sayfayı seçin ve “Çalıştır” düğmesine tıklayın
Kodu çalıştırdığınızda başka bir pencere açılacaktır. Burada programı görüntülemek istediğiniz sayfayı seçip “Çalıştır” butonuna tıklamanız gerekmektedir.
) 6 Adım Mesajı Msg'de gösterBox
Çalıştır butonuna tıkladığınızda program çalıştırılacaktır. Msg'yi Msg'de gösterecektir.Box.
Yukarıdaki Excel Kodunu indirin
ÖZET
VBA Tam Formu: Uygulama için Visual Basic. Excel'de uygulamalar oluşturmak için kullanabileceğiniz Visual Basic programlama dilinin bir alt bileşenidir. VBA ile excel'in güçlü özelliklerinden yararlanmaya devam edebilir ve bunları VBA'da kullanabilirsiniz.