Excel Formül
Modül 1: VBA'ya İlk Adım

Makrolu Dosyaları Doğru Kaydetmek

VBA'ya yeni başlayanların en sık yaşadığı travma şudur: Harika kodlar yazılır, dosya kaydedilip kapatılır, ertesi gün açıldığında kodların tamamı silinmiştir. Neden mi? Çünkü Excel'in standart formatı makroları barındırmaz!

XLSX mi? XLSM mi?

Excel'in standart dosya uzantısı .xlsx'tir. Bu format, güvenlik amacıyla içinde hiçbir şekilde kod barındırmaz. Eğer yazdığınız kodların kalıcı olmasını istiyorsanız dosyanızı Makro İçerebilen Excel Çalışma Kitabı (.xlsm) olarak kaydetmek ZORUNDASINIZ.

Adım Adım Makrolu Kaydetme:

  1. Excel'de sol üstten Dosya (File) menüsüne tıklayın.
  2. Farklı Kaydet (Save As) seçeneğini seçin.
  3. Dosya adı yazılan yerin hemen altındaki Kayıt Türü (Save as type) açılır menüsüne tıklayın.
  4. Listeden Makro İçerebilen Excel Çalışma Kitabı (*.xlsm) seçeneğini seçin ve Kaydet'e basın.
Pro İpucu: Eğer dosyanızın boyutu çok büyükse (çok fazla veri varsa), `.xlsm` yerine Excel İkili Çalışma Kitabı (.xlsb) formatını seçebilirsiniz. Bu format hem makroları destekler hem de dosya boyutunu %50'ye kadar sıkıştırarak çok daha hızlı çalışmasını sağlar.

Canlı Makro Simülatörü: SaveAs Kullanımı

Manuel yapmak yerine, bunu bir VBA kodu ile de yapabiliriz. Aşağıdaki kod, standart .xlsx dosyanızı kod ile .xlsm formatında kaydeder. Kodu Çalıştır butonuna basarak sağdaki Excel tepe başlığındaki uzantı değişimini izleyin.

Visual Basic Editörü
Module1 (Code)
Sub DosyayiMakroluKaydet()
    ' Aktif dosyayı makro içerebilen formatta (XLSM) kaydeder
    ActiveWorkbook.SaveAs _
        Filename:="C:\Rapor.xlsm", _
        FileFormat:=xlOpenXMLWorkbookMacroEnabled

    MsgBox "Dosyanız güvenle XLSM olarak kaydedildi!", vbInformation
End Sub
Dosya Durumu
Kitap1.xlsx - Excel
Dosya Giriş Ekle Geliştirici
Tehlike: Makrolar Kaydedilmez
Microsoft Excel ✕
Dosyanız güvenle XLSM olarak kaydedildi!