Excel'de Makro Yazma: Tam Kılavuz

⚡ Akıllı Özet

Excel'deki makrolar, bir dizi adımı kaydeder ve tekrarlayan bir görevi otomatikleştirmek için tek bir tıklamayla bunları yeniden oynatır. Bu sayfa, makronun ve VBA'nın ne olduğunu, makro güvenliğinin temellerini açıklar ve banka dekontlarını içeren bir CSV dosyasını içe aktaran ve biçimlendiren çalışan bir makro örneği sunar.

  • ⏺️ Temel Tanım: Excel makrosu, yaptığınız adımları kaydeder ve gerektiği kadar tekrar oynatarak tekrarlayan işlerde zamandan tasarruf sağlar.
  • 🧑💻 VBA: Excel, makro kayıt yaparken Visual Basic for Applications dilini otomatik olarak kullanır, bu nedenle başlatmak için herhangi bir kodlama gerekmez.
  • Geliştirici Sekmesi: Makrolar, varsayılan olarak gizli olan ve Seçenekler, Şeridi Özelleştir yoluyla etkinleştirilen Geliştirici sekmesinde bulunur.
  • 🔒 Güvenlik: Makrolar, kötüye kullanılabilecekleri gerekçesiyle varsayılan olarak devre dışı bırakılmıştır; bu nedenle makroları yalnızca güvenilir bir kaynaktan çalıştırın.
  • 💾 Dosya Biçimi: Makro içeren bir çalışma kitabı, makro etkinleştirilmiş .xlsm biçiminde kaydedilmelidir.
  • ▶ ️ Kaydedin ve Çalıştırın: Makro Kaydet düğmesi adımları kaydeder, Kaydı Durdur düğmesi kaydı sonlandırır ve Makrolar düğmesi kaydı yeniden oynatır.

Excel'de Makro Nasıl Yazılır?

Excel Makrosu Nedir?

Excel Makrosu Excel adımlarınızı kolayca kaydeden ve makronun bunu istediğiniz kadar oynatacağı bir kayıt ve oynatma aracıdır. VBA Makroları tekrarlanan görevleri otomatikleştirdiğinden zaman kazandırır. Excel ortamında çalışan bir programlama kodu parçasıdır ancak makroları programlamak için kodlayıcı olmanıza gerek yoktur. Ancak makroda ileri düzey değişiklikler yapabilmek için temel VBA bilgisine sahip olmanız gerekir.

Excel Makroları Excel'de Neden Kullanılır?

İnsanlar olarak biz alışkanlık yaratıklarıyız. Her gün, her iş gününde yaptığımız belirli şeyler var. Tek bir düğmeye basmanın sihirli bir yolu olsaydı ve tüm rutin görevlerimiz halledilse daha iyi olmaz mıydı? Evet dediğinizi duyabiliyorum. Excel'deki makro bunu başarmanıza yardımcı olur. Meslekten olmayanların dilinde makro, Excel'deki rutin adımlarınızın tek bir düğmeyi kullanarak yeniden oynatabileceğiniz kaydı olarak tanımlanır.

Örneğin bir su dağıtım şirketinde kasiyer olarak çalışıyorsunuz. Müşterilerin bir kısmı banka aracılığıyla ödeme yapıyor ve günün sonunda sizden bankadan veriyi indirip iş gereksinimlerinizi karşılayacak şekilde formatlamanız isteniyor.

Verileri içe aktarabilirsiniz Excel ve format. Ertesi gün aynı ritüeli yapmanız gerekecek. Yakında sıkıcı ve yorucu hale gelecek. Makrolar bu tür rutin görevleri otomatikleştirerek bu tür sorunları çözer. Adımları kaydetmek için bir makro kullanabilirsiniz.

  • Verileri içe aktarma
  • İş raporlama gereksinimlerinizi karşılayacak şekilde biçimlendirmek.

Meslekten olmayanların dilinde VBA nedir?

VBA, Visual Basic for Applications'ın kısaltmasıdır. Rutin görevleri gerçekleştirirken Excel'in adımlarınızı kaydetmek için kullandığı bir programlama dilidir. Excel'deki makroların avantajlarından yararlanmak için programcı veya çok teknik bir kişi olmanıza gerek yok. Excel, kaynak kodunu sizin için otomatik olarak oluşturan özelliklere sahiptir. Şununla ilgili makaleyi okuyun: VBA daha fazla ayrıntı için.

Excel Makro Temelleri

Makrolar geliştirici özelliklerinden biridir. Varsayılan olarak geliştiriciler sekmesi Excel'de görüntülenmez. Raporu özelleştirme yoluyla görüntülemeniz gerekecek

Excel Makroları, saldırganlar tarafından sisteminizin güvenliğini aşmak için kullanılabilir. Varsayılan olarak Excel'de devre dışıdırlar. Makroları çalıştırmanız gerekiyorsa, makroları çalıştırmayı etkinleştirmeniz ve yalnızca güvenilir bir kaynaktan geldiğini bildiğiniz makroları çalıştırmanız gerekir.

Excel makrolarını kaydetmek istiyorsanız çalışma kitabınızı makroların etkin olduğu bir biçimde *.xlsm kaydetmelisiniz

Makro adı boşluk içermemelidir.

Bir makro oluştururken daima makronun açıklamasını doldurun. Bu, sizin ve başkalarının makronun ne yaptığını anlamanıza yardımcı olacaktır.

Adım Adım Excel'de Makro Kaydetme Örneği

Şimdi bu Excel makroları eğitiminde, Excel'de nasıl makro oluşturulacağını öğreneceğiz:

Makroların Önemi Excel'de anlatılan senaryoyla çalışacağız. Bu Excel makro eğitimi için, Excel'de makro yazmak için aşağıdaki CSV dosyasıyla çalışacağız.

Excel'de Makroları Kaydetmek

Yukarıdaki dosyayı buradan indirebilirsiniz

Yukarıdaki CSV Dosyasını ve Makrolarını indirin

Yukarıdaki verileri içe aktaracak ve iş raporlama gereksinimlerimizi karşılayacak şekilde biçimlendirecek makro özellikli bir şablon oluşturacağız.

Geliştirici Seçeneğini Etkinleştir

VBA programını çalıştırmak için Excel'deki geliştirici seçeneğine erişiminizin olması gerekir. Aşağıdaki Excel makro örneğinde gösterildiği gibi geliştirici seçeneğini etkinleştirin ve bunu Excel'deki ana şeridinize sabitleyin.

) 1 Adım“DOSYA” ana menüsüne gidin

“Seçenekler” seçeneğini seçin.

Geliştirici Seçeneğini Etkinleştir

Geliştirici Seçeneğini Etkinleştir

) 2 Adım Şimdi başka bir pencere açılacak, o pencerede şu işlemleri yapın

  • Şeridi Özelleştir'e tıklayın
  • Geliştirici seçeneği için onay kutusunu işaretleyin
  • Tamam düğmesine tıklayın

Geliştirici Seçeneğini Etkinleştir

) 3 Adım Geliştirici Sekmesi

Artık şeritte GELİŞTİRİCİ sekmesini görebileceksiniz

Geliştirici Seçeneğini Etkinleştir

) 4 Adım CSV'yi indir

Öncelikle elektronik tablo üzerinde nasıl bir komut butonu oluşturup programı çalıştırabileceğimizi göreceğiz.

  • C sürücüsünde Banka Makbuzları adlı bir klasör oluşturun
  • İndirdiğiniz makbuz.csv dosyasını yapıştırın

Geliştirici Seçeneğini Etkinleştir

) 5 Adım Makro Kaydet

  1. GELİŞTİRİCİ sekmesine tıklayın
  2. Aşağıdaki resimde gösterildiği gibi Makro Kaydet'e tıklayın

Geliştirici Seçeneğini Etkinleştir

Aşağıdaki iletişim penceresini göreceksiniz

Geliştirici Seçeneğini Etkinleştir

  1. Makro adı olarak ImportBankReceipts'i girin.
  2. İkinci adım varsayılan olarak orada olacak
  3. Açıklamayı yukarıdaki diyagramda gösterildiği gibi girin
  4. “Tamam” sekmesine tıklayın

) 6 Adım Makro Gerçekleştir OperaKaydetmek istediğiniz işlemler/Adımlar

  • İmleci A1 hücresine yerleştirin
  • VERİ sekmesine tıklayın
  • Harici veri al şerit çubuğundaki Metinden düğmesine tıklayın

Aşağıdaki iletişim penceresini göreceksiniz

Geliştirici Seçeneğini Etkinleştir

  1. CSV dosyasını sakladığınız yerel sürücüye gidin
  2. CSV dosyasını seçin
  3. İçe Aktar düğmesine tıklayın

Aşağıdaki sihirbazı alacaksınız

Geliştirici Seçeneğini Etkinleştir

Yukarıdaki adımları takip ettikten sonra İleri butonuna tıklayın

Geliştirici Seçeneğini Etkinleştir

Yukarıdaki adımları izleyin ve sonraki düğmeye tıklayın

Geliştirici Seçeneğini Etkinleştir

  • Bitir düğmesine tıklayın
  • Çalışma kitabınız artık aşağıdaki gibi görünmeli

Geliştirici Seçeneğini Etkinleştir

) 7 Adım Verileri Biçimlendir

Sütunları kalın yapın, genel toplamı ekleyin ve toplam tutarı elde etmek için TOPLA işlevini kullanın.

Geliştirici Seçeneğini Etkinleştir

) 8 Adım Makro Kaydı Durdur

Artık rutin işlerimizi bitirdiğimize göre aşağıdaki resimdeki gibi makro kaydetmeyi durdur butonuna tıklayabiliriz.

Geliştirici Seçeneğini Etkinleştir

) 9 Adım Makroyu Tekrar Oynat

Çalışma kitabımızı kaydetmeden önce içe aktarılan verileri silmemiz gerekecek. Bunu, her yeni fiş aldığımızda ve ImportBankReceipts makrosunu çalıştırmak istediğimizde kopyalayacağımız bir şablon oluşturmak için yapacağız.

  • İçe aktarılan tüm verileri vurgulayın
  • Vurgulanan verilere sağ tıklayın
  • Sil üzerine tıklayın
  • Farklı kaydet butonuna tıklayın
  • Çalışma kitabını aşağıda gösterildiği gibi makro özellikli bir biçimde kaydedin

Geliştirici Seçeneğini Etkinleştir

  • Yeni kaydedilen şablonun bir kopyasını oluşturun
  • Aç onu
  • GELİŞTİRİCİ sekmesine tıklayın
  • Makrolar düğmesine tıklayın

Aşağıdaki iletişim penceresini göreceksiniz

Geliştirici Seçeneğini Etkinleştir

  1. ImportBankReceipts'i seçin
  2. Makronuzun açıklamasını vurgular
  3. Çalıştır düğmesine tıklayın

Aşağıdaki verileri alacaksınız

Geliştirici Seçeneğini Etkinleştir

Tebrikler, Excel'de ilk makronuzu oluşturdunuz.

Mutlak ve Göreceli Makro Kayıt Karşılaştırması

Kaydetmeden önce, Geliştirici sekmesindeki "Göreli Referansları Kullan" düğmesi, makronun tıkladığınız hücreleri nasıl hatırlayacağını belirler. Doğru modu seçmek, kaydedilen bir makronun yeni verilerde çalışıp çalışmamasının en yaygın nedenidir.

Moda Nasıl kaydediyor? İçin en iyisi
Mutlak (varsayılan) A1 gibi hücrenin tam adresini her seferinde kaydeder. Her zaman aynı hücrede başlayan bir görev, örneğin A1 hücresine aktarma gibi.
Bağıl Sabit bir adresi değil, mevcut hücreden yapılan hareketi kaydeder. Bir listede, imlecin bulunduğu yere bağlı olarak tekrarlanan bir görev.

💡 İpucu: Yukarıdaki ImportBankReceipts makrosu, her zaman sayfayı A1 hücresinden doldurduğu için mutlak kayıt kullanır. Aynı adımların her seferinde farklı bir satırda çalışması gerektiğinde, kaydetmeden önce Göreceli Referansları Kullan seçeneğini etkinleştirin.

SSS

Standart bir .xlsx dosyası makro kodu depolayamaz. Bunun yerine çalışma kitabını makro etkinleştirilmiş .xlsm biçiminde kaydedin. .xlsx olarak kaydederseniz, Excel makroların dosyadan kaldırılacağı konusunda uyarı verir.

Makro kodları zararlı eylemler gerçekleştirebileceğinden, Excel varsayılan olarak makroları devre dışı bırakır ve bir güvenlik uyarısı gösterir. Makroları yalnızca güvendiğiniz bir kaynaktan gelen dosyalarda etkinleştirin ve emin değilseniz kodu kontrol edin.

Geliştirici sekmesini açın, Makrolar'a tıklayın, makroyu seçin ve Düzenle'yi seçin. Bu, kaydedilen adımların değiştirilebilen ve kaydedilebilen VBA kodu olarak göründüğü Visual Basic Düzenleyicisini açar.

Evet. Excel'deki Copilot ve kod yardımcıları gibi yapay zeka özellikleri, görevin basit bir tanımından VBA kodu üretir. Kullanıcı kodu Visual Basic Düzenleyicisine yapıştırır ve verilerin bir kopyası üzerinde test eder.

Evet. Yapay zekâ asistanları oluşturulan VBA kodunu okur, her adımı sade bir dille açıklar ve daha kısa veya daha güvenli hale getirmenin yollarını önerir. Kullanıcı açıklamayı inceler ve kullanmadan önce yapılan değişiklikleri test eder.

Bu yazıyı şu şekilde özetleyin: