Btgunluk.com
Kişisel bir bilişim blogu
Düşeyara uygulaması
Excel'in yaygın olarak kullanıldığı yerlerden biri de sertifika ve sonuç belgesi basımı. Örnek bir senaryoyu takip ederek bu tip bir uygulamanın nasıl hazırlanacağını adım adım görelim.
Bir dersanenin deneme sınavı yaptığını ve bu deneme sınavının sonuçlarının aşağıdaki şekilde Excel'de dersaneye verildiğini varsayalım.
Dersane bu sonuçları her öğrenciye sonuç kartı olarak da vermek istesin. Yani her öğrenciye, aşağıdaki boş belgenin dolu bir çıktısı verilecek olsun.
Yukarıdaki tabloda Ad Soyad'ın iki sütun sağındaki hücreye(D3) tıklandığında, ekranda bir combox belirmesini ve buradan öğrenci adlarının seçilebilmesini sağlayalım. Bunu yapabilmek için, D3 hücresi seçiliyken, Excel 2007'nin şeritindeki Veri sekmesinde yer alan Veri doğrulama seçeneği kullanılır.
Ekrana gelen aşağıdaki pencerenin İzin verilen bölümünden Liste seçilir.
Daha sonra aynı pencerenin Kaynak bölümünün yanındaki düğme tıklanır ve aşağıda görüldüğü gibi, tablonun ad ve soyadı içeren hücreleri seçililip en sağdaki düğme tıklanır.
Pencerenin en son hali aşağıdaki gibi olacaktır. Tamam'a tıklanır.
Artık D3'e tıklandığında, hücrenin sağ tarafında aşağıda görüldüğü gibi bir ok ekrana gelecektir. Bu oka tıklandığında bir liste açılacak ve burada öğrencilerin adları yer alacaktır.
Yaptığımız uygulamanın işe yaraması için; Matematik Neti, Fizik Neti, Kimya Neti ve Puanında yukarıdaki tabloya getirilmesi gerekir. İşte bunu yapabimek için Excel'in düşeyara fonksiyonu kullanılır.
Düşeyara fonskiyonunu bir sihirbazla eklemek için, Formüller sekmesindeki Arama ve Başvuru bölümünden DÜŞEYARA seçilir.
Bu komut verildiğinde ekrana aşağıdaki pencere gelir.
Bu pencerenin Aranan_değer bölümüne, neye göre arama yapılacağı girilir. Bizim örneğimizde Ad Soyad'a göre arama yapılacağından D3 hücresi seçilir. Düşeyara fonksiyonu sayesinde bu hücrenin yanındaki değerlere de ulaşabileceğiz. Tablo_dizisi bölümünde ise aramanın hangi aralığı kapsayacağı belirtilir. Tablo_dizisi ifadesinin yanındaki düğme tıklanarak bilginin aranacağı tablo aşağıdaki şekilde seçilir.
Sütün_indis_sayısı ifadesi ise, aranan değer bulunduktan sonra kaçıncı sıradaki hücredeki verinin alınacağını ifade eder. Biz Matematik netlerine ulaşmaya çalıştığımızdan buraya 2 değerin yazmamız gerekir. Eğer Fizik Netlerine ulaşmamamız gerekseydi, buraya 3; Kimya netlerine ulaşmamız gerekseydi 4 yazacaktık.
Son olarak Aralık_bak değerine tablomuz sıralı ise DOĞRU, değilse YANLIŞ yazıyoruz. Bizim bilgileri aradığımız tablomuz sırasız olduğundan buraya YANLIŞ yazıyoruz ve Tamam'a tıklayrak işlemi bitiriyoruz.
Oluşan formülün Sütun_indis_sayısı'nı değiştirerek diğer hücrelere uyguladıktan sonra, hangi ad soyadı seçersek, ona ait netler tabloya getirilmiş olacaktır.
Her ne kadar yazımı biraz uzatacak da olsam, hazırladığım Excel belgesine şöyle bir özellik eklemeyi de anlatmak istiyorum. Hangi öğrenciye sonuç kartı verildiğini takip etmek için, tablomuzu aşağıdaki hale getirelim.
Sonuç kartımızı vereceğim bölüme de aşağıdaki gibi bir düğme koyalım. Bu düğmeye tıkladığımızda yukarıdaki tablonun Kontrol bölümüne bir X koysun. Bir Excel belgesine nasıl düğme ekleneceği öğrenmek için buraya tıklayabilirsiniz.
Son olarak da aşağıdaki makroyu bu düğmeye atıyoruz.
Sub Düğme3_Tıklat() 'D3 hücresini seç Range("D3").Select 'D3'teki değeri ad değişkenine ata ad = ActiveCell.Text 'K3den K8e kadar döngü oluştumak için komutlar For i = 3 To 8 Range("K" & i).Select 'eğer K3 K8 arasında aranılan adı bulursa If ActiveCell.Text = ad Then 'aynı satırdaki P sütunundaki hücreyi seç ve X yazdır Range("P" & i).Select ActiveCell.FormulaR1C1 = "X" End If Next i Range("D3").Select End Sub
Böylece öğrencinin sonuç kartı oluşturulduktan sonra, İşaretle düğmesine basıldığında, tablonun Kontrol alanına bir X işareti konulacaktır.
Son olarak Excel 2007'de makro içeren dosyamızı xlsm uzantısı ile kaydediyoruz.
Bu yazıda hazırlanan Excel belgesine buradan ulaşabilirsiniz.
10.11.2010 08:01:35
Etiketler: excel
Yorumlar
Yazı hakkında yorum yapmak için, buraya tıklayın.
Kategoriler :
- Bilişim (53)
- C Sharp (1)
- Delphi (44)
- Duyuru (8)
- Excel (8)
- Fıkralar (9)
- Flash (2)
- Javascript (3)
- Kategorisiz (2)
- Kıssa'dan Hisse (5)
- Php (20)
- Program Tanıtımı (1)
- Python (2)
Arşiv :
- Kasım 2008 (11)
- Ekim 2010 (6)
- Kasım 2010 (11)
- Aralık 2010 (3)
- Ocak 2011 (2)
- Mayıs 2011 (1)
- Temmuz 2011 (4)
- Ağustos 2011 (10)
- Ekim 2011 (2)
- Ocak 2012 (2)
- Şubat 2012 (1)
- Mart 2012 (1)
- Nisan 2012 (3)
- Haziran 2012 (2)
- Temmuz 2012 (1)
- Ağustos 2012 (1)
- Kasım 2012 (1)
- Mart 2013 (1)
- Mayıs 2013 (1)
- Temmuz 2013 (1)
- Ekim 2013 (2)
- Kasım 2013 (2)
- Şubat 2014 (1)
- Ekim 2014 (1)
- Kasım 2014 (3)
- Şubat 2015 (1)
- Ağustos 2015 (3)
- Eylül 2015 (1)
- Ekim 2015 (1)
- Ocak 2016 (3)
- Nisan 2016 (1)
- Ekim 2016 (1)
- Aralık 2016 (8)
- Ocak 2017 (27)
- Şubat 2017 (1)
- Haziran 2017 (1)
- Eylül 2017 (1)
- Kasım 2017 (1)
- Ocak 2018 (2)
- Temmuz 2018 (2)
- Kasım 2018 (1)
- Aralık 2018 (1)
- Şubat 2019 (1)
- Ağustos 2019 (2)
- Aralık 2019 (1)
- Ocak 2020 (1)
- Nisan 2020 (10)
- Kasım 2020 (1)
- Aralık 2020 (1)
- Ocak 2021 (1)
- Mayıs 2022 (1)
- Kasım 2022 (1)
- Mart 2023 (1)
- Mayıs 2023 (2)
- Haziran 2023 (1)
- Ocak 2024 (2)
- Temmuz 2024 (1)
- Aralık 2024 (1)
Etiketler :
- 3d acar baltas Android asp.net banana pi c sharp delphi fonksiyonları excel Firefox flash flowplayer ipucu opencv pascal pdf php fonksiyonları python super pi ttnet veritabanı video visual studio Windows word