Yeni Başlayanlar İçin Excel'de VBA Makroları Yazma Öğreticisi (Ve Neden Öğrenmelisiniz)

  • William Charles
  • 37
  • 4137
  • 670
reklâm

Excel Makroları, sık kullandığınız Excel işlemlerini otomatikleştirerek size zaman kazandırabilir. Ancak makrolar aslında oldukça sınırlıdır. Kayıt aracıyla hata yapmak kolaydır ve kayıt işlemi zordur..

Makro oluşturmak için VBA'yı kullanmak size çok daha fazla güç verir. Excel'e tam olarak ne yapacağınızı ve nasıl yapacağınızı söyleyebilirsiniz. Ayrıca daha birçok fonksiyon ve özelliğe de erişebilirsiniz. Excel'i düzenli kullanıyorsanız, VBA makroları oluşturmayı öğrenmeye değer.

Temel bilgilerle başlayacağız.

VBA Nedir??

VBA, Uygulamalar için Visual Basic'tir, birçok Microsoft uygulamasında kullanabileceğiniz bir programlama dili. Visual Basic bir programlama dilidir ve VBA ise uygulamaya özel bir versiyonudur. (Microsoft, Visual Basic’i 2008’de durdurdu, ancak VBA hala güçleniyor).

Neyse ki programcı olmayanlar için, VBA çok basittir ve düzenlemek için kullandığınız arayüz çok fazla yardım sunar. Kullanacağınız komutların birçoğu, açılır komut önerilerini ve otomatik tamamlamaları kullanarak, komut dosyanızı hızlı bir şekilde çalıştırmanıza yardımcı olur.

Yine de, VBA alışmak biraz zaman alıyor.

Excel'de VBA Makrolarının Avantajları

VBA bir makroyu kaydetmekten daha zorsa, neden kullanmalısınız? Kısa cevap, VBA makrolarından daha fazla güç elde etmenizdir..

E-tablonuzu tıklamak ve bu tıklamaları kaydetmek yerine, Excel'in tüm işlev ve özelliklerine erişebilirsiniz. Sadece onları nasıl kullanacağınızı bilmeniz gerekir.

Ve VBA ile daha rahat olduğunuzda, normal makroda yapabileceğiniz her şeyi çok daha kısa sürede yapabilirsiniz. Excel'e söylediğiniz gibi sonuçlar daha da tahmin edilebilir olacaktır kesinlikle ne yapalım. Belirsizlik yok.

VBA makronuzu oluşturduktan sonra, başka birinin yararlanabilmesi için kaydetmeniz ve paylaşmanız kolaydır. Bu, özellikle aynı şeyleri Excel'de yapmanız gereken birçok kişiyle çalışırken kullanışlıdır..

Nasıl çalıştığını görmek için basit bir VBA makrosuna bakalım.

Excel'de VBA Makrosu Örneği

Basit bir makroya bakalım. Elektronik tablomızda çalışanların adları, çalışanların çalıştığı mağaza numarası ve üç aylık satışları bulunur..

Bu makro her mağazadan üç aylık satışlar ekler ve bu toplamları elektronik tablodaki hücrelere yazar (VBA iletişim kutusuna nasıl erişeceğinizden emin değilseniz, buradaki VBA adım adımına bakın):

Alt MağazaSates () Dim Sum1 Para Birimi Olarak Dim Sum2 Para Birimi Olarak Dim Sum3 Para Birimi Olarak Dim Sum4 Aralık İçindeki Her Bir Hücre İçin Para Birimi ("C2: C51") Hücresi. IsEmpty (Acure) If ActiveAcell için Çık -1) = 1 Ardından Sum1 = Sum1 + Cell.Value ElseIf ActiveCell.Offset (0, -1) = 2 Değerini Sonra Sum2 = Sum2 + Cell.Value ElseIf ActiveCell.Offset (0, -1) = 3 O zaman Sum3 = Sum3 + Cell.Value ElseIf ActiveCell.Offset (0, -1) = 4 Sonra Sum4 = Sum4 + Cell.Value Sıradaki Hücre Aralığı ise ("F2"). Değer = Sum1 Aralığı ("F3"). Değer = Sum2 Aralığı (" F4 "). Değer = Toplam3 Aralığı (" F5 "). Değer = Toplam4 Bitiş Alt

Bu uzun ve karmaşık görünebilir, ancak parçalara ayrılacağız, böylece bireysel unsurları görebilir ve VBA'nın temelleri hakkında biraz bilgi edinebilirsiniz..

Sub bildirmek

Modülün başında, biz var “Alt Mağaza Satış ()”. Bu, StoreSales adlı yeni bir alt tanımlar..

İşlevleri de tanımlayabilirsiniz - fark, işlevlerin değerleri döndürebilmesi ve subs (başka programlama dillerine aşina iseniz, sub yöntemlerin karşılığıdır). Bu durumda, bir değer döndürmemize gerek yoktur, bu yüzden bir alt kullanıyoruz..

Modülün sonunda, biz var “Son Alt,” bu Excel'e bu VBA makrosuyla yaptığımızı söylüyor.

Değişkenleri Bildirmek

Komut dosyamızdaki ilk kod satırları ile başlar “karartmak.” Dim, VBA'nın bir değişkeni bildirme emridir..

Yani “Dim Sum1” adlı yeni bir değişken oluşturur “sum1.” Ancak Excel'e bunun ne tür bir değişken olduğunu söylememiz gerekir. Bir veri tipi seçmemiz gerekiyor. VBA’da birçok farklı veri türü vardır - listenin tamamını Microsoft’un yardım belgelerinde bulabilirsiniz..

VBA makromuz para birimleri ile ilgileneceğinden, Para birimi veri türünü kullanıyoruz..

İfade “Dim Sum1 Para Birimi Olarak” Excel'e Sum1 adlı yeni bir Para Birimi değişkeni oluşturmasını söyler. Bildirdiğiniz her değişkenin bir “Gibi” Excel'in türünü anlatan ifade.

For Loop Başlatmak

Döngüler, herhangi bir programlama dilinde oluşturabileceğiniz en güçlü şeylerden bazılarıdır. Eğer döngüler hakkında bilginiz yoksa, Do-While döngülerinin bu açıklamasına göz atın Bilgisayar Programcılığındaki İşler Nasıl Yapılır Döngüler Bilgisayar Programcılığındaki İşler Nasıl Yapılır Döngüler Bilgisayar Programcılığındaki İşler Nasıl Yapılır? . Muhtemelen süre ve döngüler hakkında bilginiz vardır, fakat bir süre bitimi döngüsü ne başarır? . Bu örnekte, makalede ele alınan bir For döngüsü kullanıyoruz..

İşte döngünün neye benzediği:

Menzildeki Her Hücre İçin ("C2: C51") [bir sürü şey] Sonraki Hücre

Bu, Excel'e belirlediğimiz aralıktaki hücreler arasında yineleme yapmasını söyler. Bir Range nesnesini kullandık VBA'daki Excel Hücreleri ve Menzil İşlevlerini Anlamak VBA'da Excel Hücreleri ve Menzil İşlevlerini Anlamak Excel'de Range and Cells işlevlerini kullanmak çok kafa karıştırıcı olabilir. VBA'da belirli bir nesne türü olan VBA'nın yardımıyla, bunları asla hayal bile edemeyeceğiniz şekillerde nasıl kullanabileceğinizi aşağıda bulabilirsiniz. Bu şekilde kullandığımız zaman“C2: C51”) -it, Excel’e bu 50 hücreyle ilgilendiğimizi söyler.

“Her biri için” Excel'e, aralıktaki her bir hücre için bir şeyler yapacağımızı söyler.. “Sonraki hücre” yapmak istediğimiz her şeyden sonra gelir ve Excel'e döngüyü baştan başlatmasını söyler (bir sonraki hücreden başlayarak).

Ayrıca şu ifadeye sahibiz: “IsEmpty (Cell) ise Çıkmak İçin.”

Ne yaptığını tahmin edebiliyor musun??

Not: Kısacası, bir While döngüsü kullanmak daha iyi bir seçim olabilirdi. 4 VBA ile Excel Makrolarını Programlarken Yapacağınız Hatalar 4 VBA ile Excel Makrolarını Programlamakta Kullanabileceğiniz Hatalar Basit kod ve makrolar, Microsoft Excel süper güçlerinin anahtarıdır. Programlamacılar bile, Sanal Temeller Uygulamaları (VBA) ile elektronik tablolarına kolayca etkileyici işlevler ekleyebilirler. Sadece bu başlangıç ​​programlama hatalarından kaçının! . Ancak, öğretim adına, bir Çıkışlı bir For döngüsü kullanmaya karar verdim..

If-Sonra-Başka İfadeler

Bu özel makronun özü If-Then-Else ifadelerindedir. İşte şartlı ifadeler dizimiz:

Eğer ActiveCell.Offset (0, -1) = 1 Sonra O zaman Sum1 = Sum1 + Cell.Value ElseIf ActiveCell.Offset (0, -1) = 2 O zaman Sum2 = Sum2 + Cell.Value ElseIf ActiveCell.Offset (0, -1) = 3 Sonra Sum3 = Sum3 + Cell.Value ActiveCell.Offset (0, -1) = 4 ise, o zaman Sum4 = Sum4 + Cell.Value End ise

Çoğunlukla, muhtemelen bu ifadelerin ne yaptığını tahmin edebilirsiniz. Yine de, ActiveCell.Offset'i tanımayabilirsiniz.. “ActiveCell.Offset (0, -1)” Excel'e, aktif hücrenin solundaki bir sütunu gösteren hücreye bakmasını söyler.

Bizim durumumuzda bu, Excel'e mağaza numarası sütununa bakmasını söylüyor. Excel bu sütunda 1 bulursa, etkin hücrenin içeriğini alır ve Sum1'e ekler. 2 bulursa, aktif hücrenin içeriğini Sum2'ye ekler. Ve bunun gibi.

Excel tüm bu ifadeleri sırayla gözden geçirir. Koşullu deyim Microsoft Excel'de IF İfadeleri Nasıl Kullanılır? Microsoft Excel'de IF İfadeleri Nasıl Kullanılır İster deneyimli bir uzman, isterse bir elektronik tablo başlatıcı olun, bu kılavuzu Excel'deki IF ifadeleri için incelemek isteyeceksiniz. memnun, Then deyimini tamamlar. Değilse, bir sonraki Elf'e gider. Sonuna kadar giderse ve koşullardan hiçbiri yerine getirilmediyse, herhangi bir işlem yapmaz.

Döngü ve koşulların birleşimi bu makroyu yönlendiren şeydir. Döngü Excel'e seçimdeki her hücreden geçmesini söyler ve şartlı şartlar bu hücreyle ne yapması gerektiğini söyler.

Hücre Değerlerini Yazmak

Sonunda hesaplamalarımızın sonuçlarını hücrelere yazıyoruz. İşte bunu yapmak için kullandığımız çizgiler:

Aralık ("F2") Değer = Toplam1 Aralık ("F3") Değer = Sum2 Aralık ("F4") Değer = Toplam3 Aralık ("F5") Değer = Sum4

İle “.değer” ve eşittir işareti, bu hücrelerin her birini değişkenlerimizden birinin değerine ayarladık..

Ve bu kadar! Excel'e bu Sub ile yazmayı bitirdiğimizi söylüyoruz. “Son Alt,” ve VBA makrosu tamamlandı.

Makroyu çalıştırdığımız zaman Makrolar düğmesi Geliştirici sekmesi, toplamlarımızı alıyoruz:

VBA'nın Yapı Taşlarını Excel'de Bir Araya Getirmek

Yukarıdaki VBA makrosuna ilk baktığınızda, oldukça karmaşık görünüyor. Ancak onu oluşturan parçalara ayırdıktan sonra mantık netleşir. Herhangi bir komut dosyası dili gibi, VBA sözdizimine alışmak zaman alır.

Ancak uygulamada, VBA kelime bilginizi geliştirecek, makroları daha hızlı, daha doğru ve kaydedebileceğinizden çok daha fazla güçle yazabileceksiniz..

Zorlandığınızda, bir Google araması yapmak VBA sorularınızı yanıtlatmak için hızlı bir yoldur. Ve Microsoft'un Excel VBA referansı, teknik bir cevap için araştırmaya istekli iseniz yardımcı olabilir..

Temel özelliklerden memnun kaldığınızda, Excel'den e-posta göndermek, Outlook görevlerini dışa aktarmak gibi VBA'yı kullanmaya başlayabilirsiniz VBA ile Outlook Görevlerinizi Excel'e Verme VBA ile Outlook Görevlerini Excel'e Verme Microsoft hayranı, MS Office ürünleri hakkında söylenebilecek en iyi şeylerden biri, en azından, her birini birbirleriyle entegre etmenin ne kadar kolay olduğu… ve PC bilgilerinizi görüntüleme Tüm Bilgisayar Bilgilerinizi Nasıl Basit Bir Şekilde Kullanacağınız Excel VBA Script Tüm Bilgisayar Bilgilerinizi Nasıl Göreceksiniz Basit bir Excel VBA Script Kullanmak Excel ve 10 dakikalık çalışma, bilgisayarınız hakkında düşündüğünüzden daha ayrıntılı bilgi verecektir. Gerçek olamayacak kadar iyi geliyor mu? Nasıl kullanılacağını biliyorsanız, bu Windows. .




20.12.21 05:16
UneDose | Yeni Başlayanlar İçin Excel'de VBA Makroları Yazma Öğreticisi (Ve Neden Öğrenmelisiniz) [url=http://www.g1n6tv9s6277th3zu0h2e5hul693f0b4s.org/]udiyvknrn[/url] diyvknrn http://www.g1n6tv9s6277th3zu0h2e5hul693f0b4s.org/ <a href="http://www.g1n6tv9s6277th3zu0h2e5hul693f0b4s.org/">adiyvknrn</a>
dfkfgzrdgc ([email protected])
17.06.21 10:24
UneDose | Yeni Başlayanlar İçin Excel'de VBA Makroları Yazma Öğreticisi (Ve Neden Öğrenmelisiniz) [url=http://www.gk0q032sh1czs7231l539c6awzuz047vs.org/]udfkfgzrdgc[/url] dfkfgzrdgc http://www.gk0q032sh1czs7231l539c6awzuz047vs.org/ <a href="http://www.gk0q032sh1czs7231l539c6awzuz047vs.org/">adfkfgzrdgc</a>
dfczfiyhgg ([email protected])
04.06.21 00:53
UneDose | Yeni Başlayanlar İçin Excel'de VBA Makroları Yazma Öğreticisi (Ve Neden Öğrenmelisiniz) dfczfiyhgg http://www.g10870i23liznv0gg447kar68odf49j7s.org/ [url=http://www.g10870i23liznv0gg447kar68odf49j7s.org/]udfczfiyhgg[/url] <a href="http://www.g10870i23liznv0gg447kar68odf49j7s.org/">adfczfiyhgg</a>
vbmoczbnjh ([email protected])
28.05.21 06:50
UneDose | Yeni Başlayanlar İçin Excel'de VBA Makroları Yazma Öğreticisi (Ve Neden Öğrenmelisiniz) <a href="http://www.g52we2knf1j7u1u44s5wchm6688rj289s.org/">avbmoczbnjh</a> vbmoczbnjh http://www.g52we2knf1j7u1u44s5wchm6688rj289s.org/ [url=http://www.g52we2knf1j7u1u44s5wchm6688rj289s.org/]uvbmoczbnjh[/url]
ijxxvvkso ([email protected])
19.05.21 10:30
UneDose | Yeni Başlayanlar İçin Excel'de VBA Makroları Yazma Öğreticisi (Ve Neden Öğrenmelisiniz) [url=http://www.gwyz5872733lvek5p502k88afueti301s.org/]uijxxvvkso[/url] <a href="http://www.gwyz5872733lvek5p502k88afueti301s.org/">aijxxvvkso</a> ijxxvvkso http://www.gwyz5872733lvek5p502k88afueti301s.org/
Modern teknoloji hakkında basit ve uygun fiyatlı.
Modern teknoloji dünyasında rehberiniz. Her gün bizi çevreleyen teknolojileri ve araçları nasıl kullanacağınızı ve Internet'te ilginç şeyleri nasıl keşfedeceğinizi öğrenin.