• 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ü Veri aktarma kodlarında değişiklik

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

Vurkan

Yeni Üye
Kullanıcı Bilgileri
Aktiflik
Çevrimdışı
Katılım
13 Tem 2023
Mesajlar
147
Çözümler
3
Aldığı beğeni
37
Excel V
Office 2019 TR
Konuyu Başlatan
Arkadaşlar merhaba. Daha önce hazırladığım bir excel dosyasında kullandığım aktarma kodları sayfaya satır eklemek zorunda kaldığım için hatalı sonuçlar vermeye başladı.
SINIF isimli sayfada iken 1. DÖNEMİ AKTAR düğmesine tıklayınca 35 kişilik sınıfı, her derse göre gerekli yerlere aktarırken 35 kişiden sonra diğer derse geçmesi gerekirken, öğrencileri 40 a tamamlayarak diğer dersten devam ediyor. Örnek dosyamın 1. DÖNEM isimli sayfasında gözlemlenebilir. Kod üzerinde düzenleme yapamadım. Yardımcı olursanız sevinirim.

Aynı dosyada aktarma kodlarında kullanılan;
aktifSayfa.Range("D" & n + 2 & ":AI" & n + 2 + 41).Formula = "=IF($AJ" & n + 2 & "=" & Chr(34) & "GELİŞTİRİLMELİ" & Chr(34) & ",1,IF($AJ" & n + 2 & "=" & Chr(34) & "İYİ" & Chr(34) & ",2,IF($AJ" & n + 2 & "=" & Chr(34) & "ÇOK İYİ" & Chr(34) & ",3," & Chr(34) & Chr(34) & ")))"
satırı için de bir değişiklik yapılabilirse sevinirim.

Bu satırla "GELİŞTİRİLMELİ" için 1, "İYİ" için 2, "ÇOK İYİ" için 3 olan seçenekler de değişti. Şöyle ki;

"ÇOK İYİ" İçin 4 ile 5 arasında rastgele bir değer,
"İYİ" İçin 3 ile 5 arasında rastgele bir değer,
"YETERLİ" İçin 2 ile 4 arasında rastgele bir değer,
"GELİŞTİRİLMELİ" İçin 1 ile 2 arasında rastgele bir değer, atanabilirse harika olur. Saygılar sunuyorum.
 

Ekli dosyalar

  • 1. SINIF SÜREÇ İZLEME v7.xls
    685.5 KB · Gösterim: 9
Çözüm
Üstadım merhaba. Dosya alma yolu bu durumda her ayrı bilgisayarda değişiklik yapılarak çalışabilir. Ben bu dosyayı öğretmen arkadaşlarla paylaşınca bu yol düzenlemesini yapamazlar. O sebeple veri alınacak dosya ile bu dosya aynı klasörde olacak şekilde ayarlansa daha iyi olur zannedersem. Bu düzenlemeyi yapmaya benim bilgim yeterli değil. Arkadaşlar bu şekilde kullanmaya alışıklar.

Diğer isteğim çok güzel olmuş. Elinize sağlık. Saygılar.
Sayın Vurkan
ben bilginiz olsun diye bu şekilde açıklama yaptım.
Ya değilse 8 nolu mesajdaki adres sizin kendi dosyanızda
kullandığınız adres. Zaten varsayılanı da o.
Ola ki bunu değiştirdiniz. D sürücüsüne ve başka isimde
bir klasöre atadınız. O zaman ne yapacağınızı bilin diye
yapılmış...
DRS ve BSR alanlarını
35 kişilik sisteme göre formüle ederseniz
kayıtları 35 kişiye göre alıyor.
Başlangıç ve Bitiş satırlarını ilgili alanlarda manuel olarak
düzenlemeniz gerekiyor. Ya da
SINIF sayfasındaki formülü aşağıdaki gibi düzeltin ve alta çekin.
=EĞER(C12="";"";MAK($C$12:$C$1000))
Daha sonra ı3:j3 seçin ders satırının sonuna kadar indirin.
Böylelikle B sütunu da düzelecektir.
Sonra makroyu çalıştırın. DRS ve BSR alanlarında
başlangıç ve bitiş satırlarının değiştiğinide göreceksiniz.
Öğrenci sayısının değişmesi durumlarında bunu hep yapmalısınız.

"ÇOK İYİ" İçin 4 ile 5 arasında rastgele bir değer,

bundan ne anlamamız gerekiyor kestiremedim.
Mesela 4,60 olur mu ? Olursa bunun için siz
standart bir sayı vermiş olsaydınız daha makul olurdu.
Yani bu rastgele sayıyı neye göre vereceğiz ?
Kolay gelsin
 

Ekli dosyalar

  • 1. SINIF SÜREÇ İZLEME v7.xls
    814 KB · Gösterim: 2
Öncelikle ilginize teşekkür ederim. Bu dosya bir tek sınıf için değil okuldaki tüm sınıflar için kullandığım bir dosya. Öğrenci sayıları da e okuldan aktarılan ekcel dosyasından alınıyor. her seferinde formül değişikliği kullanışlı olmaz sanırım.
1. DÖNEM ve 2. DÖNEM sayfalarında B, C ve AJ sütunlarında kullandığım;
=EĞER(SATIR(A1)>EĞERSAY(SINIF!$B$1:$B$10000;$A$2);" ";İNDİS(SINIF!D$1:D$10000;KÜÇÜK(EĞER(SINIF!$B$1:$B$10000=$A$2;SATIR(A$1:A$10000));SATIR(A1)))) dizi formülünün yerini alacak bir kod idi. Bu formülle işlem gerçekleşiyordu. Ancak sayfalardaki formüller yüzünden dosya boyutu büyük oluyordu.

ikinci konuya gelince eksik bilgi vermişim. Rastgelearada ile yapmak istediğim örneğin ÇOKİYİ ise 4 veya 5 tamsayılarından birini o satırdaki hücrelere rasgele yazmasıydı. Yani satırdaki her bir hücreyi 5 ile değil rast gele 4 veya 5 ile doldurmasıydı. Saygılar.
 
Sayın Vurkan
1.DÖNEM ve 2.DÖNEM sayfasındaki formülleri koda çevirdim.
SINIF sayfasındaki H3:J8 aralığındaki işlemleri koda çevirdim.
Derecelendirmeler için aynı sayfada sarı boyalı değerleri takip ederek
bir fikir edinebilirsiniz. O kodları da düzenledim.
F11 hücresine öğrenci sayısını belirtmelisiniz. Formül paneli buna göre çalışır.
Örneğin 40 kişilik bir sınıf eklediniz. F11 hücresine 40 yazın ve butonları çalıştırın.
Deneyip sonucu bildirir misiniz *
kolay gelsin.
 

Ekli dosyalar

  • 1. SINIF SÜREÇ İZLEME v7_RVZ.xlsm
    196.7 KB · Gösterim: 1
Üstadım Merhaba. Son yüklediğiniz dosyayı indirdim. e okuldan excele aktardığım (örnek olarak yükledim) dosyaları SINIF sayfasındaki F10 hücresine (2A, 2B ...) dosya adını yazıp NOTLARI ALALIM butonuyla dosyadaki bilgileri sınıf sayfasındaki C12:AE aralığına aldığım 1. Modüldeki Sub_veri_al() kodları çalışmadı.

Örneğin;
ÇOKİYİ ise 4 veya 5 tamsayılarından birini o satırdaki hücrelere rasgele yazmasıydı. Yani satırdaki her bir hücreyi 5 ile değil rast gele 4 veya 5 ile doldurmasıydı.
İYİ ise 3, 4 veya 5 tamsayılarından birini
YETERLİ 2, 3, veya 4 tamsayılarından birini
GELİŞTİRİLMELİ ise 1, 2 veya 3 tamsayılarından birini o satırdaki hücrelere rasgele yazmasıydı.

Saygılar.
 

Ekli dosyalar

  • 2A.XLS
    41.5 KB · Gösterim: 1
  • 2B.XLS
    43.5 KB · Gösterim: 1
SINIF isimli sayfada iken 1. DÖNEMİ AKTAR düğmesine tıklayınca 35 kişilik sınıfı, her derse göre gerekli yerlere aktarırken 35 kişiden sonra diğer derse geçmesi gerekirken, öğrencileri 40 a tamamlayarak diğer dersten devam ediyor. Örnek dosyamın 1. DÖNEM isimli sayfasında gözlemlenebilir. Kod üzerinde düzenleme yapamadım. Yardımcı olursanız sevinirim.
Sayın Vurkan ben direk bu soruya ve bu soruyla ilgili makrolara odaklandım.
Bu konuyla da ilgili 2 makronuz vardı. BİRİNCİ_DÖNEM ve İKİNCİ_DÖNEM makroları.
1. DÖNEMİ AKTAR ve 2. DÖNEMİ AKTAR butonlarında bunlar.
Ben bu makroları modül3 de revize ettim. Ve bende sorunsuz çalışıyor.
NOTLARI ALALIM makrosunda olmayan ne ona da bakalım.
Kolay gelsin.
 
Üstadım haklısınız. Sizin hazırladığınız kodlarda sorun yok. Ancak e okuldan excele aktardığımız notları SINIF isimli sayfaya aldığımız kod çalışmamaya başladı.
2 Nolu mesajınızda attığınız dosyada çalışan aşağıdaki kod revize yaptığınız dosyada çalışmıyor. Saygılar

AppleScript:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.
 
Sayın Vurkan
Modül3 e verial_ADO adıyla yeni bir veri alma makrosu yazdım.
SINIF sayfasında F10 hücresine sınıf adını yazmanız yeterli.
İlgili değişkenlere adresleri doğru verdiğiniz sürece sıkıntı olmaz.
Dosyalarınızın bulunduğu dizinin de önemi yok bu durumda.
Makro veri çektiğinde D sütunundaki numaraları benzersiz olarak sayar.
Burdan öğrenci sayısını bulur ve F11 hücresine yazar.
Bu durumda sizin öğrenci sayısını yazmanıza gerek kalmadı. Otomatikleştirildi.
Diğer bir talebiniz değerlendirmelere aynı satırlarda belirlediğiniz aralıklarda
rastgele sayılar atanmasıydı. Bunu da yazdım.
Bunların dışında hiçbir makroya çalışıyor mu çalışmıyor mu diye bakmadım.
Benim yazdığım kodlarda bir sıkıntı yok.
Kolay gelsin.

Dikkat etmeniz gereken şu:
"C:\Users\User\Downloads\2A.XLS"
"C:\Users\User\Downloads\2B.XLS"

yukardaki adresler tam adresdir.
dos_yol_exc ve dos_ad_exc değişkenlerinde nasıl parçalandığına dikkat ediniz.
dosyalarınızın bulunduğu dizinde tam adresi alın ve
aşağıdaki gibi parçalayın.
dos_yol_exc = "C:\Users\User\Downloads"
dos_ad_exc = deg & ".XLS" gibi.
 

Ekli dosyalar

  • 1. SINIF SÜREÇ İZLEME v7_RVZ.xlsm
    192 KB · Gösterim: 2
Üstadım merhaba. Dosya alma yolu bu durumda her ayrı bilgisayarda değişiklik yapılarak çalışabilir. Ben bu dosyayı öğretmen arkadaşlarla paylaşınca bu yol düzenlemesini yapamazlar. O sebeple veri alınacak dosya ile bu dosya aynı klasörde olacak şekilde ayarlansa daha iyi olur zannedersem. Bu düzenlemeyi yapmaya benim bilgim yeterli değil. Arkadaşlar bu şekilde kullanmaya alışıklar.

Diğer isteğim çok güzel olmuş. Elinize sağlık. Saygılar.
 
Üstadım merhaba. Dosya alma yolu bu durumda her ayrı bilgisayarda değişiklik yapılarak çalışabilir. Ben bu dosyayı öğretmen arkadaşlarla paylaşınca bu yol düzenlemesini yapamazlar. O sebeple veri alınacak dosya ile bu dosya aynı klasörde olacak şekilde ayarlansa daha iyi olur zannedersem. Bu düzenlemeyi yapmaya benim bilgim yeterli değil. Arkadaşlar bu şekilde kullanmaya alışıklar.

Diğer isteğim çok güzel olmuş. Elinize sağlık. Saygılar.
Sayın Vurkan
ben bilginiz olsun diye bu şekilde açıklama yaptım.
Ya değilse 8 nolu mesajdaki adres sizin kendi dosyanızda
kullandığınız adres. Zaten varsayılanı da o.
Ola ki bunu değiştirdiniz. D sürücüsüne ve başka isimde
bir klasöre atadınız. O zaman ne yapacağınızı bilin diye
yapılmış bir açıklama.

O sebeple veri alınacak dosya ile bu dosya aynı klasörde olacak şekilde ayarlansa daha iyi olur zannedersem.
Bu tip durumlarda da ThisWorkbook.Path kalıbını kullanın.

'dos_yol_exc = "C:\Users\User\Downloads"
dos_yol_exc = ThisWorkbook.Path
dos_ad_exc = deg & ".XLS"

Kolay gelsin.
 

Ekli dosyalar

  • 1. SINIF SÜREÇ İZLEME v7_RVZ.xlsm
    195.3 KB · Gösterim: 2
Çözüm
Üstadım merhaba. Yardımların ve emeğin için çok teşekkür ediyorum. Dosyayı indirip kullanmak isteyen arkadaşlar var ise vba şifresi "sivas" (tırnak işaretleri yok) tır. Saygılar sunuyorum.
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.
Geri
Üst