Excel ve VBA (Makro) ile 10 Dakikada Öğrenci Takip Otomasyonu Yapın
Excel ve VBA (Makro) ile 10 Dakikada Öğrenci Takip Otomasyonu Yapın
Her dönem başında öğrenci listeleri, sınav notları ve devamsızlık takipleriyle boğuşmaktan yoruldunuz mu? Excel’in gizli gücü VBA (Visual Basic for Applications) makrolarını kullanarak, tek tuşla veri kaydeden ve analiz yapan harika bir dijital asistanı birlikte tasarlıyoruz!
Bir öğretmen için zaman en değerli hazinedir. Sınav kağıdı okumak, ders planı hazırlamak derken bir de idari veri girişleriyle saatler kaybetmek can sıkıcı olabilir. Bu rehberde, Excel’de sadece basit formüller kullanmak yerine, yazdığımız verileri otomatik olarak alt alta listeleyen ve raporlayan şık bir Öğrenci Takip Otomasyonu geliştireceğiz.
Hiç kodlama bilmeseniz dahi, aşağıdaki adımları sırasıyla takip ederek kendi okulunuza özel bu programı kolayca hazırlayabilirsiniz.
Adım 1: Excel Sayfalarınızı Hazırlayın
Öncelikle boş bir Excel çalışma kitabı açın ve alt taraftan iki adet sayfa (Sheet) oluşturup isimlerini şu şekilde değiştirin:
- Veri_Giris: Verileri yazıp “Kaydet” butonuna basacağımız form ekranı.
- Ogrenci_Listesi: Kaydedilen tüm verilerin arka arkaya düzenli bir tablo halinde depolanacağı veri tabanı sayfamız.
Veri_Giris sayfasında aşağıdaki hücreleri başlık olarak belirleyin:
| Hücre | Giriş Yapılacak Bilgi |
|---|---|
| C4 | Öğrenci Numarası |
| C6 | Adı Soyadı |
| C8 | Sınıfı / Şubesi |
| C10 | Sınav Notu |
Adım 2: Geliştirici Sekmesini Aktif Edin
Excel’de VBA kodlarını yazabilmek için üst menüde “Geliştirici” sekmesinin görünmesi gerekir. Eğer görünmüyorsa:
- Dosya > Seçenekler > Şeridi Özelleştir adımlarını takip edin.
- Sağ taraftaki listeden “Geliştirici” kutucuğunu işaretleyin ve “Tamam” deyin.
Adım 3: VBA Kodunu Ekleyin
Geliştirici sekmesinden Visual Basic butonuna tıklayın (veya doğrudan ALT + F11 yapın). Açılan pencerede üst menüden Insert > Module seçeneğine tıklayın ve aşağıdaki hazır kod bloğunu açılan beyaz sayfaya yapıştırın:
‘ Değişkenleri tanımlıyoruz
Dim girisSayfasi As Worksheet
Dim listeSayfasi As Worksheet
Dim sonSatir As Long
Set girisSayfasi = ThisWorkbook.Sheets(“Veri_Giris”)
Set listeSayfasi = ThisWorkbook.Sheets(“Ogrenci_Listesi”)
‘ Boş bırakılmasını önlemek için basit bir kontrol
If girisSayfasi.Range(“C4”).Value = “” Or girisSayfasi.Range(“C6”).Value = “” Then
MsgBox “Lütfen öğrenci no ve ad soyad alanlarını doldurun!”, vbExclamation, “Eksik Veri”
Exit Sub
End If
‘ Ogrenci_Listesi sayfasındaki ilk boş satırı buluyoruz
sonSatir = listeSayfasi.Cells(listeSayfasi.Rows.Count, 1).End(xlUp).Row + 1
‘ Verileri aktarıyoruz
listeSayfasi.Cells(sonSatir, 1).Value = girisSayfasi.Range(“C4”).Value ‘ Okul No
listeSayfasi.Cells(sonSatir, 2).Value = girisSayfasi.Range(“C6”).Value ‘ Adı Soyadı
listeSayfasi.Cells(sonSatir, 3).Value = girisSayfasi.Range(“C8”).Value ‘ Sınıfı
listeSayfasi.Cells(sonSatir, 4).Value = girisSayfasi.Range(“C10”).Value ‘ Sınav Notu
listeSayfasi.Cells(sonSatir, 5).Value = Now ‘ Kayıt Tarihi
‘ Formu temizliyoruz
girisSayfasi.Range(“C4, C6, C8, C10”).ClearContents
MsgBox “Öğrenci kaydı başarıyla eklendi!”, vbInformation, “İşlem Tamam”
End Sub
Adım 4: Kaydet Butonunu Tasarlayın
Kod penceresini kapatıp Excel’e dönün. Veri_Giris sayfasındayken:
- Ekle > Şekiller menüsünden köşeleri yuvarlanmış bir dikdörtgen seçip sayfaya çizin.
- Üzerine çift tıklayarak “Öğrenciyi Kaydet” yazın ve dilediğiniz gibi renklendirin.
- Oluşturduğunuz bu şekle sağ tıklayın ve “Makro Ata…” seçeneğini seçin.
- Açılan listeden yazdığımız OgrenciKaydet makrosunu seçip “Tamam” deyin.
Artık her veri girişi yaptıktan sonra bu butona bastığınızda Excel arka planda otomatik olarak yeni bir satır açacak, verileri oraya kaydedecek ve giriş alanlarını bir sonraki öğrenci için temizleyecektir!
⚠️ Çok Önemli Kaydetme Kuralı
Yazdığınız makroların kaybolmaması için Excel dosyanızı kaydederken normal formatta değil; mutlaka dosya türünü “Makro İçerebilen Excel Çalışma Kitabı (*.xlsm)” olarak seçerek kaydetmelisiniz. Aksi halde dosyanızı kapatıp açtığınızda yazdığınız kodlar tamamen silinir.
