Yapay zekadan makale özeti
- Kısa
- Ayrıntılı
- Bu video, bir eğitmen tarafından sunulan Excel'de VBA makroları kullanarak veri aktarımı ve analizi yapma konulu kapsamlı bir eğitim içeriğidir.
- Video, üç ana bölümden oluşmaktadır: İlk bölümde öğrencilerin grup projesi notları ve kişisel bilgilerinin farklı sayfalarda bulunduğu senaryoda, Visual Basic kullanarak sayfalar arası veri aktarımı gösterilmektedir. İkinci bölümde, öğrencilerin notlarını telefon numaralarına göre All sayfasına aktarma ve yaş gruplarına göre öğrenci sayılarını hesaplama gibi makro örnekleri anlatılmaktadır. Son bölümde ise toplamlar sayfası oluşturma ve yaş gruplarına göre not toplamları, ortalama yaşlar ve belirli not değerlerini alan öğrenci sayılarını hesaplama gibi istatistiksel analizler için makro kodları geliştirilmektedir.
- Eğitim boyunca Dictionary objesi kullanımı, for döngüsü, find metodu, hücre manipülasyonu, if koşulları ve veri filtreleme teknikleri gibi VBA konuları detaylı şekilde açıklanmaktadır.
- Excel'de Makro Kullanarak Sayfalar Arası Veri Aktarımı
- Video, Excel'de makro kullanarak sayfalar arası veri aktarımını iki senaryo üzerinden anlatacak.
- İlk senaryoda öğrenciler gruplar halinde yer alıyor ve her birinin telefon numarası veya öğrenci numarası bulunuyor.
- Örnek veriler randas.com sitesinden rastgele oluşturulmuş olup, gerçek öğrenciler değil, grup projesi yapmış öğrencileri temsil ediyor.
- 00:42Veri Aktarımının Amacı
- Grup projesi için tek bir not verilmiş ve bu notu her öğrenci için geçerli hale getirmek istiyoruz.
- Öğrencilerin notları ayrı bir sayfada yer alacak ve bu sayfada öğrenciler hakkında daha fazla veri ve birden fazla not sütunu bulunacak.
- Sadece grup projesi notlarını ilk sayfadan diğer sayfaya eşleşen ID'ye göre aktarmak istiyoruz.
- 01:31Makro Kodunun Çalışma Prensibi
- Birinci sayfada gruplar şeklinde veriler bulunuyor, E sütununda notlar ve D sütununda her öğrenci için eşsiz bir değer (telefon numarası gibi) var.
- Makro, telefon numaraları eşleşen satırlarda notları diğer sayfaya aktarmayı amaçlıyor.
- Makro çalıştırılınca, "All" sayfasında her öğrenci için karşılık gelen not değeri doğru şekilde aktarılıyor.
- 03:32Makro Kodunun Analizi
- Kod iki worksheet üzerinde çalışıyor: biri kaynak olan "Gruplar" sayfası, diğeri ise tüm verilerin olduğu "All" sayfası.
- Kod etkili bir şekilde çalışmıyor ancak daha kolay anlaşılır bir yapıya sahip.
- Kodun performansı çok yüksek değil ancak anlaşılması kolay bir şekilde yazılmış.
- 04:01Excel'de Veri Aktarımı
- Kaynak sayfasındaki satır sayısını "last" adlı değişkende tutarak, "for" döngüsü ile ikinci satırdan itibaren verileri alıyoruz.
- Öğrenci ID'si (telefon numarası) ve not değerleri "Gruplar" sayfasından D ve E sütunlarından alınarak "All" sayfasına aktarılıyor.
- "Find" metodu ile "All" sayfasında öğrenci ID'si bulunuyor, bulunamazsa mesaj kutusu ile uyarı veriliyor.
- 06:52Veri Toplama ve Sınıflandırma
- İkinci senaryoda, her yaş kategorisinden kaç öğrenci olduğunu bulmak için "Toplamlar" adlı yeni bir sayfa oluşturuluyor.
- "Toplamlar" sayfasında her eşsiz yaş yazılacak ve sağ tarafında o yaştan kaç öğrenci olduğunu gösterecek.
- Makro kullanarak bu işlem otomatikleştiriliyor ve sonuçlar "Toplamlar" sayfasına kaydediliyor.
- 09:10Dictionary Kullanımı
- Veri işlemede "dictionary" adı verilen bir obje kullanılıyor, bu yapı arka planda hash tablosu kullanarak veri depolar.
- Dictionary, anahtar-değer çiftleri şeklinde veri saklar ve anahtar üzerinden hızlıca değer erişimi sağlar.
- Kodda, yaş değerleri dictionary'e eklenerek her yaştan kaç öğrenci olduğu sayısallaştırılıyor.
- 14:59Excel'de Toplamlar Sayfası Oluşturma
- Toplamlar sayfasında sütunların ne olduğunu yazarak başlanıyor ve ilk satırda "age" ve "count" başlıkları yer alıyor.
- A2 ve B2 hücreleri genişletilerek yeni bilgiler eklenecek.
- D dictionary'sindeki key'ler (id'ler veya telefon numaraları) ve item'lar (her elemandan kaç tane olduğu bilgisi) kullanılıyor.
- 15:54Ek Sütunlar ve Dictionary Kullanımı
- Üçüncü bir sütun eklenebilir ve her yaş grubunun aldığı toplam not bilgisi gösterilebilir.
- İkinci bir dictionary (d1) oluşturulabilir ve her yaş grubu için toplam değerler sıfırdan başlayarak hesaplanabilir.
- D1 dictionary'sinde, 7. sütundaki (grade) değerler toplanarak yaş gruplarına göre toplam notlar hesaplanabilir.
- 18:28Makro Kodu ve Döngüler
- Makro kodu test_iki sub'ın içerisinde yer almalı ve indentation düzgün olmalıdır.
- For döngüsünde "next i" komutu i değerini artırmak için kullanılır, bu komut olmadan döngü devam edemez.
- Toplamlar sayfasında hesaplanan değerler C2 hücrelerinden itibaren gösterilir.
- 20:00İstatistiksel İşlemler ve Koşullu Değerler
- Ortalama hesaplamaları için D sütunu kullanılabilir ve E2 hücrelerinde gösterilebilir.
- Koşullu değerler için if yapısı kullanılabilir, örneğin 70'den yüksek not alan öğrencilerin sayısı hesaplanabilir.
- D2 dictionary'si oluşturulup, 70'den büyük not alan öğrencilerin sayısı hesaplanabilir ve D sütununda gösterilebilir.
- 24:07Makro Çalıştırma ve Sonuçlar
- Makro çalıştırıldığında toplamlar sayfasında hesaplamalar gösterilir.
- Örnek olarak 29 yaş grubundaki öğrencilerin 3 tanesi olmasına rağmen hiçbiri 70'den yüksek not almamıştır.
- For döngüsünde "next i" komutu döngünün sonunu belirler ve i değerini artırır.