Excel VBA 3D logosu yanında makro kod modülü ve otomasyon dişlisi silüetleri bembeyaz arka planda premium kompozisyon

Excel VBA Eğitimi, katılımcılara tekrar eden Excel işlerini otomatikleştirme gücü verir. İster makro kavramıyla yeni tanışan ister kayıt edicinin ötesine geçmek isteyen herkes, kendi çözümlerini kodlayabilir duruma gelir.

Katılımcılar, dakikalar süren manuel işleri saniyelere indiren ve hataya yer bırakmayan akışlar tasarlamayı öğrenir. Bu yetkinlik, hem günlük raporlamada hem de kurumsal süreçlerde doğrudan zaman kazandırır.

Excel VBA eğitimini şirketinize özel planlayalım. 0 212 951 05 08 · Teklif isteyin

Katılımcı Profili

Bu eğitim aşağıdaki rol gruplarına uygundur:

  • Excel ileri kullanıcıları: tekrar eden işleri otomatikleştirmek isteyenler
  • Raporlama uzmanları: haftalık veya aylık raporu makroya bağlamak isteyenler
  • Finans ve mali işler: mutabakat ve dönem kapanışını otomatize edenler
  • Operasyon: veri temizleme ve dosya birleştirme yapanlar
  • Geliştirici adayları: programlamaya VBA ile başlayanlar
  • Excel'i ileri kullanan veya VBA öğrenmek isteyenler

Ön Gereklilikler

Eğitimden en yüksek verim için aşağıdaki ön bilgi önerilir:

  • Excel'de formül, tablo ve PivotTable bilgisi
  • Mantıksal akış (eğer, döngü) okuyabilme
  • Geliştirici sekmesini açabilme veya Microsoft 365 erişimi
  • Programlamaya merak duyma (önceki kodlama deneyimi şart değil)

Süresi ve Tarihi

Süre: 2 gün. Bu süre standart program içindir; ek modüllere ve hedefe göre süre özelleştirilebilir.
Eğitim tarihleri ve saatleri, ekibinizin uygunluğuna göre birlikte planlanır.

Kazanımlar

Eğitim sonunda katılımcı:

  • VBE'de Sub, Function ve modül yapısını kurar.
  • Range'i array olarak okuyup yazar, performansı 50x artırır.
  • For, Do While ve For Each döngülerini doğru seçer.
  • On Error GoTo ile yapısal hata yönetimi uygular.
  • UserForm tasarımıyla özel veri giriş ekranı kurar.
  • Worksheet_Change olayıyla hücre değişimini tetikler.
  • Outlook otomasyonu ile rapor mail gönderir.

Excel VBA Eğitimi Konuları

1. VBA editörü (VBE) ve makro kaydedicinin sınırları

  • Geliştirici sekmesi açma ve VBE arayüzü (Alt+F11)
  • Project Explorer, Properties Window, Immediate Window
  • Makro Kaydedici ne yapar, ne yapamaz (döngü, koşul yok)
  • Kaydediciden gelen kodu temizleme: Select kalkar, With kullanılır
  • Module, Class Module, UserForm farkı

2. Sub, Function ve değişken kullanımı

  • Sub vs Function: değer döndüren ile döndürmeyen ayrımı
  • Dim ile değişken tanımlama ve Option Explicit zorunluluğu
  • Veri tipleri: String, Long, Double, Integer, Boolean, Date, Variant
  • Scope: Procedure-level, Module-level (Private), Project-level (Public)
  • Const ile sabit değerler
  • ByRef vs ByVal: parametre geçirme mantığı

3. Range, Cells, Columns, Rows nesneleri

  • Range("A1"), Cells(1, 1), Range("A1:B10") yazım farkları
  • Range.Value, Range.Formula, Range.Text okuma
  • Cells(Rows.Count, 1).End(xlUp).Row: son dolu satır
  • UsedRange ve CurrentRegion
  • Range.Offset(satır, sütun) ile göreli hareket
  • Resize, Find, Replace metodları

4. Workbook ve Worksheet nesneleri

  • ActiveWorkbook vs ThisWorkbook ayrımı
  • Workbooks.Open, Workbooks.Add, .Close, .SaveAs
  • Worksheets.Add, .Copy, .Delete, .Move
  • Sheets vs Worksheets (chart sheet farkı)
  • Sheet referansını Code Name ile sabitleme

5. Karar ve döngü yapıları

  • If ... Then ... ElseIf ... Else koşul yapısı
  • Select Case ile çok yollu karar
  • For ... Next ve For Each ... Next döngüleri
  • Do While, Do Until, Exit For, Exit Do
  • İç içe döngü ve performans tuzakları

6. Diziler (Array) ve performans

  • Sabit boyutlu ve dinamik (ReDim) diziler
  • Range'i tek seferde 2D Variant array'e okuma: 50-100x hız kazanımı
  • Array'i Range'e tek seferde yazma
  • UBound, LBound, IsArray
  • Multi-dimensional array ile tablo işleme

7. Hata yönetimi: On Error, Err nesnesi

  • On Error Resume Next: kontrollü kullanım, abuse uyarısı
  • On Error GoTo Label: yapısal hata yakalama
  • Err.Number, Err.Description, Err.Source
  • Custom error raise (Err.Raise) ve özel hata kodları
  • Hata sonrası temizlik (Reset state, close objects)

8. Performans: ScreenUpdating, Calculation, EnableEvents

  • Application.ScreenUpdating = False: ekran çizim yükü
  • Application.Calculation = xlCalculationManual: formül yenileme
  • Application.EnableEvents = False: event döngülerini durdurma
  • Application.DisplayAlerts = False: uyarı pop-up'larını engelleme
  • Cleanup pattern: try/finally mantığıyla restore
  • StatusBar ile ilerleme gösterimi

9. UserForm tasarımı ve kontrolleri

  • UserForm oluşturma: Insert → UserForm
  • Kontrol tipleri: TextBox, Label, ComboBox, ListBox, CheckBox, OptionButton, CommandButton
  • UserForm_Initialize ve Activate olayları
  • Validation: TextBox_Change, Exit event'i ile veri doğrulama
  • ComboBox.AddItem ile dinamik liste doldurma
  • Modal vs Modeless gösterim

10. Olay (Event) handler'ları

  • Worksheet_Change: hücre değişince tetik
  • Worksheet_SelectionChange: seçim değişikliği
  • Workbook_Open, Workbook_BeforeClose, Workbook_BeforeSave
  • Application-level event'ler (Class Module ile)
  • Event döngüsü problemi ve EnableEvents = False kontrolü

11. Tablo (ListObject) ve PivotTable otomasyonu

  • ListObject ile yapılandırılmış tablo
  • ListColumn ve ListRow nesneleri
  • PivotCache.Create ve PivotTables.Add
  • PivotFields yerleşimi (Row, Column, Value, Filter)
  • PivotTable.RefreshTable ve source range güncelleme

12. Outlook, Word, PowerPoint otomasyonu

  • Late binding (CreateObject) vs Early binding (References)
  • Outlook.Application: otomatik mail gönderme
  • Word.Application: Word'e tablo aktarma
  • PowerPoint.Application: slide oluşturma
  • Cross-application kapatma ve memory leak önleme

13. Dosya işlemleri ve klasör işleme

  • FileSystemObject (FSO): file, folder işlemleri
  • Dir() ile klasör tarama
  • CSV ve metin dosyası okuma (Line Input)
  • JSON parse: ScriptControl veya VBA-JSON library
  • Path birleştirme ve dosya adı standardizasyonu

14. Şifreleme, güvenlik ve makro dağıtımı

  • VBA Project parola koruma (Tools → VBAProject Properties)
  • Makro imzalama: Digital Certificate
  • Trusted Locations: güvenli klasör yapısı
  • Macro Settings: Enable / Disable, notification
  • .xlsm vs .xlsb (binary) vs .xlam (add-in)

15. AI ile VBA: kod üretme ve hata yorumlatma

  • ChatGPT'ye ihtiyaç tarifinden VBA kod istemi
  • Mevcut kodu modele açıklatma: Sub ne yapıyor?
  • Hata mesajını AI'a yorumlatma ve düzeltme önerisi alma
  • Excel object model referansı için AI sorgulama
  • AI çıktısının doğruluk kontrolü ve güvenli test

Excel VBA Eğitimi ile İlgili
Sıkça Sorulan Sorular ve Cevapları


Hiç programlama yapmamış biri VBA öğrenebilir mi?

Evet. VBA, sıfırdan programlama için en yumuşak giriş dillerinden. Range / Worksheet gibi nesne modeli adım adım öğretiliyor; ön kodlama deneyimi gerekmez.

Makro kaydedicisini biliyorum, eğitim benim için ne katar?

Kaydedicinin sınırlarını aşmak için temel modüller: döngüler, değişkenler, hata yönetimi. Aynı işi 10 kat hızda yapan, bakımı kolay kod yazmayı öğreniyorsun.

VBA hala kullanılıyor mu yoksa Office Scripts'e geçmem mi gerekir?

VBA hala milyonlarca Excel dosyasında çalışıyor ve yakın gelecekte kaldırılmıyor. Office Scripts (JavaScript) yeni, ama VBA kurumsal Excel'de baskın.

Excel + Outlook entegrasyonu nasıl öğretiliyor?

CreateObject ile Outlook.Application çağrılıyor; otomatik mail gönderme, Recordset'ten alıcı listesi alma, ek dosya gönderme adım adım gösteriliyor.

Eğitim içeriğini ihtiyaçlarımıza göre özelleştirebilir misiniz?

Evet. Eğitim öncesinde ihtiyaç analizi yaparak içerik ve örnekleri ekibinize göre uyarlayabiliriz. Modüller eklenebilir, bazı başlıklar derinleştirilebilir veya sadeleştirilebilir.

Eğitimi hangi şehirlerde ve online olarak veriyorsunuz, sertifika veriliyor mu?

Eğitimi yerinde ya da canlı online alabilirsiniz. İstanbul, Ankara ve İzmir başta olmak üzere Türkiye'nin tüm illerinde yerinde eğitim sağlıyoruz; online formatta Türkiye'nin ve dünyanın her yerinden katılım mümkündür. Tarih ve saatler birlikte ayarlanır, program sonunda katılım sertifikası verilir.