• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

sınıf dağıtımı

Üstadım ben en son yaptığınız "yeni liste" adlı dosyayı kullanmıştım. Bu kodu ona yapıştırdım ancak hata veriyor. Makro bu çalışma kitabında olmayabilir diyor. Hocam yardımcı olursanız sevinirim. Elinize sağlık sağolun.
 
1- B2:E2 aralığını silin ve "Birleştir Ortala" yapın.
2- C2:D2 aralığını seçip "Birleştir Ortala" yapın.
3- B2:E2 kenarlık ekleyip Orta hizalama yapın.
Sub Kura()
Application.ScreenUpdating = True
son = Cells(Rows.Count, 3).End(3).Row
şube = Range("H4").Value
a = 1
For i = 1 To son - 4
If a = şube + 1 Then a = 1
dolu = WorksheetFunction.CountA(Range("BI" & a + 4 & ":DZ" & a + 4))
b = WorksheetFunction.RandBetween(1, dolu) + 60
isim = Cells(a + 4, b).Value

kac = WorksheetFunction.Match(isim, Range("C:C"), 0)
num = Range("B1").Offset(kac - 1, 0)
Range("B2:E2") = ""
If kac < 33 Then
ActiveWindow.ScrollRow = 5
Else

ActiveWindow.ScrollRow = kac - 10
End If
basla = Timer
Do While Timer < basla + 1.5
DoEvents
Loop
Range(Cells(kac, 2), Cells(kac, 5)).Interior.ColorIndex = 3
Range("B2") = num
Range("C2") = isim
Range("E2") = Chr(a + 64)
basla = Timer
Do While Timer < basla + 1.5
DoEvents
Loop

Range(Cells(kac, 2), Cells(kac, 5)).Delete shift:=xlUp

Cells(a + 4, b).Delete shift:=xlToLeft
Range("B2:D2") = ""
sat = Cells(Rows.Count, a + 11).End(3).Row + 1
Cells(sat, a + 11) = isim
Cells(sat, a + 11).Borders.LineStyle = 1
a = a + 1
Next

Range(Cells(1, 12), Cells(1, 11 + şube)) = "=SUMPRODUCT(--(ISNUMBER(MATCH($BC5:$BC1000,L5:L100,0)))*($BD5:$BD1000=""K""))"
Range(Cells(2, 12), Cells(2, 11 + şube)) = "=SUMPRODUCT(--(ISNUMBER(MATCH($BC5:$BC1000,L5:L100,0)))*($BD5:$BD1000=""E""))"
Range(Cells(3, 12), Cells(3, 11 + şube)) = "=SUMPRODUCT(--(ISNUMBER(MATCH($BC5:$BC1000,L5:L100,0))),($BE5:$BE1000))/COUNTA(L5:L100)"

Range(Cells(1, 12), Cells(3, 11 + şube)) = Range(Cells(1, 12), Cells(3, 11 + şube)).Value
Range(Cells(1, 11), Cells(3, 11 + şube)).Borders.LineStyle = 1
Cells(1, 11) = "KIZ"
Cells(2, 11) = "ERKEK"
Cells(3, 11) = "PUAN"
Range("BC:BE") = ""
ActiveWindow.ScrollRow = 1
End Sub
 
Hocam aynı hatayı aldım tekrar. Amacımız oluşan dağıtım listesindeki çocukların numaralarından bulup e-okulda sınıflara yerleştirmek. Oluşan listede sadece isim olarak sınıflar ayrıldığı için öğrencileri tek tek e-okulda arayıp bulmak çok zor oluyor. Numara olunca daha kolay. Sanırım beceremediğim bir şeyler var.
 
Range(Cells(1, 12), Cells(1, 11 + şube)) = "=SUMPRODUCT(--(ISNUMBER(MATCH($BC5:$BC1000,L5:L100,0)))*($BD5:$B D1000=""K""))"

Verdiğiniz kodu nihayet yapıştırıp kullanabildim ancak Kurayı yaptıktan sonra yukarıdaki satırda hata veriyor. Debug yapınca sarı ile işaretlenmiş vaziyette beliriyor.

Bir de hocam sanırım tam ifade edememişim sanırım. Kura çekerken evet numarayı da gösteriyor ama dediğim gibi kura bittikten sonra sağ tarafta oluşan toplu listede numaraların da görünmesini nasıl sağlarız. Hocam hakkınızı helal edin yorduk sizi ama sayenizde büyük bir yükün altından kalkacağız. Sağolun...
 
Hocam çok teşekkür ederim. Çok duacı oldum. Elinize ve de bilginize sağlık...
 
Hocam bu arada bir probleme rastladım. Öğrenci sayılarını eşit olarak böldüğü için arta kalan öğrencileri yerleştirmiyor. Örneğin 598 tane öğrencimiz var ve 13 şubeye bölmek istiyoruz. Kuradan sonra 13 şube oluyor hepsi 40 kişilik oluyor ama kalan öğrencileri yerleştirmiyor. Normalde ortalama 46 kişilik olması lazım ama 40 kişide bırakıyor :)
 
Hocam sınıflarda artık 30 kişi bile olmuyor. Siz de gerçekten 46 kişilik sınıflar var mı?
 
Hocam şaka yapmıyorum inanın sınıflarımız ortalama 50 kişi. Malum dönüşüm oldu çevre okullardan çok öğrenci aldık. Ayrıca tadilat olan bazı okulların öğrencilerini aldık varın gerisini siz düşünün. :(

Bir de öğrenmek adına sorayım. Son eklediğiniz dosyadan kod sayfasını açtığımda bu mevcutlar ile ilgili olarak ayarlama yaptığımız kod satırı hangisi hocam. Olur ya belki 60 kişilik sınıflar oluşturmak zorunda kalırız. Çok teşekkür ederim...
 
Module 2 de "sınıfla" makrosu ile şablon sayfasında ki formüllerde düzenleme yaptım.
 
Geri
Üst