8. Bölüm: Makro İle Hızlanma
8.1.3 Örnek Makro Çalışması
Üçüncü ünitede üzerinde çalıştığımız “Not Defteri ve Parklar” adlı çalışma kitabının “Notlar” sayfasında CAS 170 dersine ait notlarla ilgili “EĞER” fonksiyonunu kullanmış, öğrencilerin hazır olarak verilen notlarıyla ilgili Geçti/Kaldı durumunu, aldığı puana karşılık gelen harf notunu ve yeterli not almışsa bu nota karşılık gelen rozet derecesini bulmuştuk.
Şimdi ise bir üniversitenin farklı bölümlerinde okuyan ve MATH101 adlı matematik dersini alan öğrencilerin sınav notlarını bu derse makro yardımıyla kaydeden bir Excel çalışma kitabı oluşturacağız. Daha sonra bu tabloya öğrencilerin toplam puanını, geçme notunu, geçme/kalma durumunu, harf notunu ve aldığı rozeti gösteren birer sütun ekleyeceğiz.
- Math101 dersine ait notların kaydedileceği “Makro Çalışması” adında bir Excel çalışma kitabı açın.
- “Sayfa1” adlı çalışma sayfasını “Not Girişi” olarak adlandırın.
- “Sayfa2” adlı çalışma sayfası açıp “Not Tablosu” olarak adlandırın.
- “Not Girişi” sayfasında aşağıdaki tabloyu B3 hücresinden başlayarak oluşturun.
- “Not Tablosu” sayfasında aşağıdaki tabloyu başlangıçta 100 öğrenci için oluşturun.
- “Sayfa 3” adlı bir çalışma sayfası açıp “Bölümler” olarak adlandırın. Math101 adlı matematik dersini üniversiteden hangi bölümlerdeki öğrencilerin aldığını gösteren aşağıdaki tabloyu oluşturun.
- “Not Girişi” sayfasında kaydı girilecek öğrencilerin bölümlerini klavyeden yazmamak için veri doğrulamayı kullanarak bir açılır liste oluşturalım. “Not Girişi” sayfasında C5 hücresine gidin. “Veri” menüsünün altındaki “Veri doğrulama” açılır listesinden “Veri Doğrulama” seçeneğine tıklayın. “Ayarlar” sekmesinde yer alan “İzin Verilen” kısmındaki açılır listeden Liste seçeneğini işaretledikten sonra, “Kaynak” bölümüne “Bölümler” çalışma sayfasından B4:B13 aralığını seçin. Bu durumda “Kaynak” kısmında =Bölümler!$B$4:$B$13 ifadesi yazmalıdır. Tamam’a tıkladıktan sonra C5 hücresine giderseniz açılır listenin oluştuğunu göreceksiniz.
- Şimdi sınav notları sırasıyla 6, 8, 70, 7, 9, 90 ve 95 olan Fizik bölümü öğrencisi “Suat Yanık”a ait verileri “Not Girişi” çalışma sayfasındaki tabloya girin. Öğrencinin bölümünü girerken açılır listeyi kullanın. Tablo aşağıdaki gibi olmalıdır.
- Şimdi bu listedeki verileri “Not Tablosu”na ekleme işlemini bir makroya kaydedelim. “Geliştirici” menüsünün altından “Makro Kaydet” düğmesine tıklayın. (Şeridinizde Geliştirici menüsü yoksa “Dosya” menüsünün altından “Seçenekler”e tıklayın. Açılan pencereden “Şeridi Özelleştir” seçeneğine tıklayın. Geliştirici menüsünü etkin hâle getirip Tamam tuşuna tıklayın.)
- Açılan iletişim kutusunda makronuza bir isim verin. (Makronun adı birden fazla kelimeden oluşuyorsa aralarında boşluk bırakmadan yazmalısınız.)
Makronun çalışması için iki yol kullanabilirsiniz:
● Kısayol: CTRL+ yanındaki boşluğa bir harf ya da SHIFT tuşuyla birlikte harf yazarak makro için bir kısa yol oluşturup makronuzu çalıştırabilirsiniz.
● Düğme/Tuş: Birazdan anlatacağımız gibi bir tuş oluşturup bu tuşa tıklayarak makronuzu çalıştırabilirsiniz. - Tamam’a tıklayın.
- C3:C12 aralığını seçip kopyaladıktan sonra “Not Tablosu” sayfasına geçin.
- C3 hücresine gidin ve “Geliştirici” menüsündeki “Göreli Başvuruları Kullan” seçeneğine tıklayın. (Bu işlemi girilen her yeni kaydın, bir önceki kayıttan hemen sonra gelen satırdan başlaması için yapıyoruz.)
- “Veri girişi” kutusunun solunda yer alan “Ad Kutusu”na, “C500” yazıp ENTER tuşuna basın. (C500 hücresine gittiniz.) Buna göre tablonuza 500 kayıt girebilirsiniz. Dilerseniz bu sayıyı artırabilirsiniz.
- CTRL ve yukarı ok ↑ tuşuna basarak C3 hücresine gidin.
- Aşağı ok ↓ tuşuna basıp C4 hücresine gittikten sonra “Geliştirici” menüsündeki “Göreli Başvuruları Kullan” seçeneğine tıklayın.
- C4 hücresine sağ tıklayıp “Özel Yapıştır” seçeneğine tıklayın. Açılan pencereden “Devrik Dönüşüm” seçeneğine tıkladıktan sonra Tamam’a tıklayın.
- “Not Girişi” çalışma sayfasına geçin. Önce Esc tuşuna basıp kopyalama işleminden ayrılın, sonra Delete tuşuna basıp kayıt giriş sayfasını temizleyin.
- C3 hücresine gittikten sonra gittikten sonra “Geliştirici” menüsünden “Kaydı Durdur” tuşuna tıklayın.
- “Geliştirici” menüsünün altındaki “Ekle” açılır listesine tıklayın. “Form Denetimleri”nden “Düğme” (ilk dikdörtgen) tuşuna tıklayın. Bu durumda fare işaretçisi + şekline dönüşür. Düğme oluşturmak için ikinci bir yöntem olarak “Ekle” menüsünün altında yer alan “Şekiller” açılır listesinden, “Dikdörtgenler” bölümündeki bir dikdörtgen seçilebilir.
- D2 hücresinin sağ alt köşesine sağ tıklayıp bırakmadan F3 hücresinin sağ alt köşesine taşıyıp bırakın. “Düğme 1” adlı bir düğme oluşacaktır. Düğmeye tıklayıp adını “Notları Kaydet” olarak değiştirin.
- “Notları Kaydet” düğmesine sağ tıklayın. Açılan listeden “Makro Ata” seçeneğine tıklayın.
- Açılan pencereden önce makronuzun ismine, sonra Tamam’a tıklayın. Bundan sonra “Not Girişi” bölümünden yeni kayıt girdikten sonra oluşturduğunuz bu düğmeye tıklarsanız kaydınız “Not Tablosu” sayfasındaki tabloya eklenecektir.
- Birkaç öğrenciye ait notları “Not girişi” çalışma sayfasındaki tablodan girip makronun düzgün çalıştığını test ettikten sonra “Not Tablosu” sayfasının görünümü aşağıdaki gibi olmalıdır.
- Bundan sonra 3. ünitedeki “Not Defteri ve Parklar” dosyasının “Notlar” sayfasında olduğu gibi “Not Tablosu” sayfasındaki tablomuza öğrencilerin “Toplam Puanı”nı, dersi “Geçme Puanı”nı, “Geçme/Kalma” durumunu, geçme puanına karşılık gelen “Harf Notu”nu ve yüksek başarı elde eden öğrencilerin aldığı nota karşılık gelen “Rozet” derecesini gösteren sütunlar ekleyelim.
- M3 hücresine TOPLAM PUAN yazdıktan sonra, içerisinde not yazılı olan satırlardaki notların toplamını bulmak için M4 hücresine =EĞER(TOPLA(Tablo3[@[Q1PUANI]:[FİNALPUANI]])=0;””;TOPLA(Tablo3[@[Q1 PUANI]:[FİNAL PUANI]])) formülünü yazın. (Burada =EĞER(TOPLA yazdıktan sonra F4:L4 aralığını seçersek formüldeki Tablo bilgileri otomatik gelecektir. Yani formülü yazdığımız hücre tablo içinde olmasaydı formülümüz =EĞER(TOPLA(F4:L4)=0;””;TOPLA(F4:L4)) biçiminde olacaktı.)
- N3 hücresine GEÇME PUANI yazdıktan sonra, içerisinde toplam puanın yazılı olduğu satırlarda öğrencilerin geçme puanını hesaplayacağız. Bu hesaplamayı yaparken yöntem olarak tüm öğrencilerin puanını öğrencilerin bu sınavlardan alabildiği maksimum puanlar toplamına bölüp 100 ile çarpacağız. Dolayısıyla önce F104 hücresine =MAK([Q1 PUANI]) formülünü yazın. (Formülü tablo dışında yazıyor olsaydık =MAK(F4:F104) olacaktı).
- Ardından bu formülü G104:N104 aralığındaki hücrelere de kopyalayın. Sonra N4 hücresine =EĞER([@[TOPLAM PUAN]]=””;””;100*([@[TOPLAM PUAN]]/ Tablo3[[#Toplamlar];[TOPLAM PUAN]])) formülünü yazın. Formülü N sütunundaki diğer hücrelere de kopyalayın.
- Öğrencilerin Geçme/Kalma durumunu bulmak için O3 hücresine GEÇTİ/KALDI yazdıktan sonra O4 hücresine =EĞER([@[GEÇME PUANI]]<60;”KALDI”; EĞER([@[GEÇME PUANI]]=””;””;”GEÇTİ”)) formülünü yazın. Aynı sütundaki diğer hücreler kopyalayın. (Formüldeki [@[GEÇME PUANI]] ifadesini elde etmek için N4 hücresine tıkladık)
- P3 hücresine HARF NOTU yazdıktan sonra P4 hücresine =EĞER([@[GEÇME PUANI]]<60;”F”;EĞER([@[GEÇME PUANI]]<70;”D”; EĞER([@[GEÇME PUANI]]<80;”C”;EĞER([@[GEÇME PUANI]]<90;”B”; EĞER([@[GEÇME PUANI]]=””;””;”A”))))) formülünü yazın. Bu formülü aynı sütundaki diğer hücrelere kopyalayın.
- Q3 hücresine ALINAN ROZET yazdıktan sonra Q4 hücresine =EĞER([@[GEÇME PUANI]]<80;””;EĞER([@[GEÇME PUANI]]<90;”Onur”;EĞER([@[GEÇME PUANI]]=””;””;”Yüksek Onur”))) formülünü yazın. Bu formülü aynı sütundaki diğer hücrelere kopyalayın.
- Kalan öğrencilerin tabloda kolayca görünmesi için “GEÇTİ/KALDI” sütununa koşullu biçimlendirme uygulayalım. Bunun için O5 hücresini seçtikten sonra “Giriş” menüsünden “Koşullu Biçimlendirme” açılır listesine tıklayın. “Hücre Vurgulama” seçeneğinin altından “İçerdiği Metin” seçeneğine tıklayın. Açılan pencerede “Şu Metni İçeren Hücreleri Biçimlendir” kısmına “KALDI” yazın, biçim kısmından “Koyu Kırmızı Metinle Açık Kırmızı Dolgu” seçeneğini seçip Tamam’a tıklayın. Biçimi aynı sütundaki diğer hücrelere kopyalayın. Aynı işlemi P5 hücresi için de tekrarlayın. Bu kez “Şu Metni İçeren Hücreleri Biçimlendir” kısmına “F” yazın. Not tablosunun son durumu aşağıdaki gibi olacaktır.
Makroya Daha Yakından Bakın
Bir makroyu düzenleyerek “Visual Basic” programlama dili hakkında biraz bilgi edinebilirsiniz. Bir makroyu düzenlemek için “Geliştirici” sekmesindeki “Kod” grubunda yer alan “Makrolar” ögesine tıklayın, makronun adını seçin ve “Düzenle” ögesine tıklayın. Bu, “Visual Basic Düzenleyicisi”ni başlatır. Kaydettiğiniz eylemlerin kod olarak nasıl göründüğüne bakın. Kodun bir kısmı muhtemelen sizin için açık olacak, bir kısmı ise biraz belirsiz olacaktır. Kod üzerinde denemeler yapın, “Visual Basic Düzenleyicisi”ni kapatın ve makronuzu tekrar çalıştırın. Bu sefer farklı bir şey olup olmadığına bakın!