• Foruma hoş geldin 👋 Ziyaretçi

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Çözüldü Klasör içerisindeki dosyalara şarta göre veri aktarımı

Bu sorun verilen destek sayesinde çözüme ulaştırılmıştır.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

Bafly963

Yeni Üye
Kullanıcı Bilgileri
Katılım
13 Mar 2024
Mesajlar
11
Aldığı beğeni
5
Excel Versiyonu
Office 2016 TR
Konuyu Başlatan
Herkese merhaba,

Sınava giren öğrencilerin kazanımlarının takip edildiği bir Excel dosyam var. Bu dosyada her sınavın bilgilerini ve bu sınava giren öğrencilerin kazanımlarını ayrı ayrı belirleyip doğru, yanlış ve boş olarak tespit edilen değerlerini her öğrencinin isminin altında işliyorum.

Yapmak istediğim şey ise bu sınava girmiş ve adı geçen her öğrenci için örneğin D:\Ogrenciler\ klasörünün altına bu öğrencinin adıyla otomatik bir excel dosyası oluşturmak (daha önce oluştu ise pas geçmek) ve bu excel dosyası içerisine Sayfa1 sekmesine öğrencinin kazanımlarını ve diğer bilgileri getirebilmek. Verileri taşıdıktan sonra girilen bilgileri temizlemek şablonu ilk hale getirmek.

2. bir sınavın verisi girildiğinde aynı öğrenci tekrar girmiş ise kendi adıyla oluşmuş olan Excel dosyasında devam eden ilk boş satıra bu verilerin gelmesini sağlamak istiyorum.

Bu çalışma ile öğrenci bazında kazanım değerlendirmeleri ve raporlama yapma imkanı bulacağım. Konuyla ilgili bir süredir araştırma ve okuma yapıyorum ama maalesef istediğime yakın bir şey bulamadım. Ekte hem doldurduğum şablonu hem de Arda isimli bir öğrenci için oluşmasını istediğim örnek bir Excel dosyasını ekledim.

Forumda yardımcı olabilecekler varsa çok sevinirim. Alternatif çözüm önerilerinizi duymaktan da memnuniyet duyarım. Şimdiden çok teşekkür ediyorum.

Saygılarımla,
 

Ekli dosyalar

  • Kazanım Değerlendirme Şablonu.xlsx
    1.5 MB · Gösterim: 14
  • Arda Örnek Dosya.xlsx
    15.5 KB · Gösterim: 14
Çözüm
1) Bir öğrenci aynı kodlu (Range("H5")) deneme sınavına ikinci kez girebilir mi ?
Sizin örneğinizde 2024312_45363 kodlu sınav mesela.

2) Aynı Ad_Soyad da öğrenci varsa ilkini bulur.
Bu sorunu aşmak için şöyle yapın. Ad_Soyad_OkulNo .
O zaman ARDA_ADRA_111, ARDA_ADRA_112 .
Geçti gitti.

3) Kodlar sınav kodunu biricik değer olarak ele alır.
ARDA isminde bir dosya oluşturulmuşsa dosya açılır
C sütununa bakılır. Sınav kodu aranır. Varsa çıkılır.
Çünkü bu öğrenci bu sınava girmiş. Yoksa ilk boş satıra
yeni sonuçlar aktarılır.

4) Eğer öğrenci adına bir dosya yoksa
aynı dizinde öğrenci adına bir dosya oluşturulur
ilk boş satıra sonuçlar yazılır.

5) Yol yakınken bir husus daha.
Oldum olası bu tip çözümlerden pek hazzetmem...
Herkese merhaba,

Sınava giren öğrencilerin kazanımlarının takip edildiği bir Excel dosyam var. Bu dosyada her sınavın bilgilerini ve bu sınava giren öğrencilerin kazanımlarını ayrı ayrı belirleyip doğru, yanlış ve boş olarak tespit edilen değerlerini her öğrencinin isminin altında işliyorum.

Yapmak istediğim şey ise bu sınava girmiş ve adı geçen her öğrenci için örneğin D:\Ogrenciler\ klasörünün altına bu öğrencinin adıyla otomatik bir excel dosyası oluşturmak (daha önce oluştu ise pas geçmek) ve bu excel dosyası içerisine Sayfa1 sekmesine öğrencinin kazanımlarını ve diğer bilgileri getirebilmek. Verileri taşıdıktan sonra girilen bilgileri temizlemek şablonu ilk hale getirmek.

2. bir sınavın verisi girildiğinde aynı öğrenci tekrar girmiş ise kendi adıyla oluşmuş olan Excel dosyasında devam eden ilk boş satıra bu verilerin gelmesini sağlamak istiyorum.

Bu çalışma ile öğrenci bazında kazanım değerlendirmeleri ve raporlama yapma imkanı bulacağım. Konuyla ilgili bir süredir araştırma ve okuma yapıyorum ama maalesef istediğime yakın bir şey bulamadım. Ekte hem doldurduğum şablonu hem de Arda isimli bir öğrenci için oluşmasını istediğim örnek bir Excel dosyasını ekledim.

Forumda yardımcı olabilecekler varsa çok sevinirim. Alternatif çözüm önerilerinizi duymaktan da memnuniyet duyarım. Şimdiden çok teşekkür ediyorum.

Saygılarımla,
Selam hocam öncelikle şunu sormak istiyorum
1- 2 tane aynı isim varsa program nasıl hareket edecek?
2- diyelim ki arda isimli öğrenci mezun oldu bilgileri tutulmaya devam edecek mi?
 
Merhaba Omar Bey,

Makrodan bizim için klasör oluşturmasını isteyeceğimiz için bu klasörleri dönem bazında açtıracağız. Diğer bir deyişle bu çalışmayı bitirebilirsem her dönem için makrosunda ufak değişiklikler yaptığım ayrı şablonları kullanacağım ve klasör yolunu değiştireceğim. Hatta bir alt klasör oluşturup öğrencinin kaçıncı sınıf olduğuna göre de kırılım yaptıracağım. Aynı dönem ve aynı kademede adı soyadı aynı olan öğrenci gelmez diye ümit ediyorum :)

Teşekkürler,
 
Makrodan bizim için klasör oluşturmasını isteyeceğimiz için bu klasörleri dönem bazında açtıracağız. Diğer bir deyişle bu çalışmayı bitirebilirsem her dönem için makrosunda ufak değişiklikler yaptığım ayrı şablonları kullanacağım ve klasör yolunu değiştireceğim. Hatta bir alt klasör oluşturup öğrencinin kaçıncı sınıf olduğuna göre de kırılım yaptıracağım. Aynı dönem ve aynı kademede adı soyadı aynı olan öğrenci gelmez diye ümit ediyorum :)
Dönem 2023-2024 güz gibi mi? eğer böyle ise ana excelde bunu belirtmelisiniz sınıf klasörünün içinde öğrenci excel dosyası yer alabilir.
aynı dönem sınıf ve ad soyad sorumluluğu da size ait olmak üzere :)
Yine de yapmadan önce Farklı çözüm yolu arayacağım klasör oluşturmak yerine...
 
Merhaba,

Üstatların desteğini bekliyorum.

Saygılarımla,
 
1) Bir öğrenci aynı kodlu (Range("H5")) deneme sınavına ikinci kez girebilir mi ?
Sizin örneğinizde 2024312_45363 kodlu sınav mesela.

2) Aynı Ad_Soyad da öğrenci varsa ilkini bulur.
Bu sorunu aşmak için şöyle yapın. Ad_Soyad_OkulNo .
O zaman ARDA_ADRA_111, ARDA_ADRA_112 .
Geçti gitti.

3) Kodlar sınav kodunu biricik değer olarak ele alır.
ARDA isminde bir dosya oluşturulmuşsa dosya açılır
C sütununa bakılır. Sınav kodu aranır. Varsa çıkılır.
Çünkü bu öğrenci bu sınava girmiş. Yoksa ilk boş satıra
yeni sonuçlar aktarılır.

4) Eğer öğrenci adına bir dosya yoksa
aynı dizinde öğrenci adına bir dosya oluşturulur
ilk boş satıra sonuçlar yazılır.

5) Yol yakınken bir husus daha.
Oldum olası bu tip çözümlerden pek hazzetmem.
50 personel var 50 adet excel dosyası ?
100 müşteri var 100 adet müşteri dosyası ?
500 öğrenci var 500 adet öğrenci dosyası ?
3000 , 5000 talep edenleri de gördüm.
Bu bence çözüm değil. Sıkıntılı da.
Denedikce göreceksiniz zaten.
Toplamda 8 sütun var. Satır sayısı da ders sayısı ve kazanım kombinasyonuna bağlı.
3 eksik 5 fazla olur ama fazla şaşmaz.
Ortalama aynı format yani.
O zaman tek bir dosyada tanımlanmış alanlarla çalışın.
Bu 16384 sütunda 2000 öğrenci demek.
Ad Kutusundan seçin direk alandasınız.
Makroyla oluşturulabilir. Yeniden boyutlanabilir.
Silinebilir. Ekleme yapılabilir.
Üstelik daha hızlı daha güvenli.
Daha ne olsun. :)
Henüz şimdiye kadar kimseyi ikna edebilmiş değilim. :)
Kimse bildiğinden şaşmıyor.
Bu konuda ikna olan bir tek benim galiba. :)
Listele butonuna tıklayın sonrasına bakalım.
Kolay gelsin .
 

Ekli dosyalar

  • Öğrenciler.zip
    892.2 KB · Gösterim: 4
Çözüm
Excelcan Bey merhaba,

Öncelikle emeklerinize sağlık. Dosyayı dün indirdim kodların nasıl çalıştığını anlamaya çalışıyorum. En kısa sürede dönüş yapacağım.

Teşekkürler,
 
1) Bir öğrenci aynı kodlu (Range("H5")) deneme sınavına ikinci kez girebilir mi ?
Sizin örneğinizde 2024312_45363 kodlu sınav mesela.

2) Aynı Ad_Soyad da öğrenci varsa ilkini bulur.
Bu sorunu aşmak için şöyle yapın. Ad_Soyad_OkulNo .
O zaman ARDA_ADRA_111, ARDA_ADRA_112 .
Geçti gitti.

3) Kodlar sınav kodunu biricik değer olarak ele alır.
ARDA isminde bir dosya oluşturulmuşsa dosya açılır
C sütununa bakılır. Sınav kodu aranır. Varsa çıkılır.
Çünkü bu öğrenci bu sınava girmiş. Yoksa ilk boş satıra
yeni sonuçlar aktarılır.

4) Eğer öğrenci adına bir dosya yoksa
aynı dizinde öğrenci adına bir dosya oluşturulur
ilk boş satıra sonuçlar yazılır.

5) Yol yakınken bir husus daha.
Oldum olası bu tip çözümlerden pek hazzetmem.
50 personel var 50 adet excel dosyası ?
100 müşteri var 100 adet müşteri dosyası ?
500 öğrenci var 500 adet öğrenci dosyası ?
3000 , 5000 talep edenleri de gördüm.
Bu bence çözüm değil. Sıkıntılı da.
Denedikce göreceksiniz zaten.
Toplamda 8 sütun var. Satır sayısı da ders sayısı ve kazanım kombinasyonuna bağlı.
3 eksik 5 fazla olur ama fazla şaşmaz.
Ortalama aynı format yani.
O zaman tek bir dosyada tanımlanmış alanlarla çalışın.
Bu 16384 sütunda 2000 öğrenci demek.
Ad Kutusundan seçin direk alandasınız.
Makroyla oluşturulabilir. Yeniden boyutlanabilir.
Silinebilir. Ekleme yapılabilir.
Üstelik daha hızlı daha güvenli.
Daha ne olsun. :)
Henüz şimdiye kadar kimseyi ikna edebilmiş değilim. :)
Kimse bildiğinden şaşmıyor.
Bu konuda ikna olan bir tek benim galiba. :)

Excelcan Bey merhaba,

Tekrar ellerinize sağlık, deneme sayfasında oluşturduğunuz kodu ve diğer modülleri inceledim anlamaya çalıştım ama maalesef
tamamen algılamam mümkün değil. Yukarıdaki notlarınıza istinaden;

1) Bir öğrencinin aynı sınava tekrar girmesi ihtimali yok o sebeple sıkıntı yaşamayacağım.
2) Aynı dönemin, aynı kademe sınıfında aynı isim ve soy isimle öğrenci olma ihtimalini pek öngörmüyorum ama önerinizi dikkate alarak ilerleyeceğim.
3) Tam da bu şekilde işlemeli elinize sağlık.
4) Teşekkürler
5) Burada belirtmek istediğiniz girilen tüm sınavların oluşan bütün verilerini tüm öğrenciler için şablonun olduğu çalışma kitabında örneğin "veri" adlı bir sayfada mı toparlamak. Bunu yapabilsek benim işim daha da kolaylaşır çünkü en nihayetinde oluşan bu veri içerisinden daha sonra öğrenciyi, sınavı, ya da kazanım konusunu çağırarak bazı raporlamalar ya da pivot yardımı ile bir dashboard hazırlamak istiyorum. Fakat ben bu dosyanın zamanla çok şişeceğini ve çalışmakta zorlanacağını düşündüğüm için öğrencilerin adına göre dosyalar oluşturmak istedim. Bir de bu şablonu çoğaltarak dönem ve sınıf kademeleri bazında ayrı ayrı takip edeceğiz yani veri yükü de bir nebze azalmış olacak ne dersiniz?

Şablon sayfasında Ders ile Kazanım arasına kazanım kodunu ve ünite bilgisini de taşımak istesem artık çok mu geç çünkü bir sürü değişken tanımlamaları yapıp farklı sublarda farklı kodlarla işlemler yapmışsınız. Uğraşayım diye baktım ama içinden çıkamadım maalesef.

Son olarak öğrenci dosyaları şablonun bulunduğu klasör içerisine otomatik oluşuyor. Ben bunu dosyoL = ThisWorkbook.Path/Denemeler şeklinde nasıl revize edebilirim?

Saygılarımla,
 
Sayın Bafly963
İlk 4 maddede mutabık kaldığımıza göre
soruyu çözülmiş kabul edebiliriz.
5. maddeden itibaren konuşulacak mevzu sizin projenizin istikameti.
Bu konuda söyleyebileceğim ilk husus
Excelde toptancı yaklaşımlardan kaçınmanız gereğidir.
Bu şu demek: Kazanım Şablonu dosyası bırakın
Kazanım Şablonu dosyası olarak kalsın. :)
Anladığım kadarıyla öğrencilerle ilgili tek tek dosya açmaktansa
bunların bir arada tutulabildiği bir dosya fikrine sıcak bakmışsınız.
Ben bir deneme dosyası hazırlayabilirim.
Bu biraz zaman alır ama olur.
Bu arada siz Kazanım Değerlendirme Şablonu dosyasını
elden geçirmelisiniz. Bu şekliyle olmaz. Olur da olmaz.
Elden geçirme işlemini tasarlarken önceliğiniz
kullanıcıya en az manuel işlem bırakmak olmalı.
Bunların başında biçimlendirmeler geliyor.
Satır 18 ve satır 19 10 sütunun birleşimi.
Ala. Ama bunlardan birini 9 sütun yaptınız mı
benim yazdığım kodlar şaşar. Bu mümkün mü ? Neden olmasın ?
Ben burda epeyce örneğini gördüm.
3 satırı birleştiriyor 100 adım sonra bir bakmışsın
4 satır birleştirmiş. 200 adım sonra 2 satır . vs.
1) Öğrenci adedi kadar biçimlendirmeleri otomatiğe bağlayın.
2) Sınava girecek öğrenci isimlerini bu hücrelere otomatiğe bağlayın.
3) Ders ve Kazanım Detayı sütunlarını hem biçimlendirme
hem de dolumunu otomatiğe bağlayın. Siz veri doğrulama kullanmışsınız.
Kısaca her öğrenci listesi değiştiğinde ya da her sınav yenilendiğinde
siz de bu şablonu yenileyebilmelisiniz.
Bunların hepsi kodla mümkün.
Basit bir form yönetimiyle hepsi çözülür.
Yenile butonuna tıklarsınız dosya yeni verilere adapte hale gelir.
Listele butonuna tıklarsınız gerekli göndermeleri yapar.
Öğrencilerle ilgili analiz kısmına bilahare bakılır.
Önceliğiniz Kazanım Değerlendirme dosyasındaki zaafları kapatmak olmalı.
Sorunuz çözüldüyse kapatın.
Kullanıcıya en az manuel işlem bırakma minvalinde
tasarımızı yapın ve ayrı başlıklar altında sorun.
Kolay gelsin.
 
Excelcan Bey,

Değerli yorumlarınız ve desteğiniz için tekrar teşekkür ediyorum. Konuyu çözüldü olarak kapatabiliriz.

Teşekkürler,
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

Konuyu okuyanlar

Geri
Üst