nöbet listesine eşit sayıda ama rastgele sırayla isim dağıtmak

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
bende bir istekete bulunabilirmiyim...
pansiyonda nöbet için
koşullar hafta içi günlerde 2 kişi cumartesi pazar 1 kişi nöbet tutacak
birkişiye haftada 2 nöbetten fazla verilmeyecek ve nöbetler aynı kişiye arka arkaya gelmeyecek
a kişisi pazartesi ve çarşamba
b kişisi salı ve perşembe sabit olmak üzere
mümkün olduğu kadar eşit bir şekilde dağıtılması
örnek dosya olarak 16. mesajdaki dosyayı kullanabiliriz
Merhaba,
Kendi örnek dosyanızı eklemeniz daha uygun olacaktır. Aşağıdaki sorularında cevabını belirtirseniz işimiz kolaylaşır.
Nöbet tutacak toplam öğretmen sayısı kaçtır?
Bir günde 2 nöbetçi mi görevli olacak?
Cumartesi-Pazar birer nöbetçi mi, yoksa her iki güne bir nöbetçi mi düşecek.
 

wezyr

Altın Üye
Katılım
14 Nisan 2006
Mesajlar
110
Excel Vers. ve Dili
OFFİCE 2010-2019
Altın Üyelik Bitiş Tarihi
21-04-2029
7- 8 kişilik 2 nöbet yeri

Dosya ektedir...
hafta içi 2 kişi hafta sonu ve tatil günleri tek kişi olacak şekilde 7- 8 kişilik nöbet cizelgesi...
 

Ekli dosyalar

wezyr

Altın Üye
Katılım
14 Nisan 2006
Mesajlar
110
Excel Vers. ve Dili
OFFİCE 2010-2019
Altın Üyelik Bitiş Tarihi
21-04-2029
sorun güncel
 

erdenek

Altın Üye
Katılım
5 Mart 2008
Mesajlar
885
Excel Vers. ve Dili
EV:EXCEL 2010-TÜRKÇE
İŞ:EXCEL 2010-TÜRKÇE
Altın Üyelik Bitiş Tarihi
31-01-2026
Arkadaşlar bu nöbet programını okula göre uyarladım ama nöbet listesi oluştur butonuna basdığım zaman ı ve j sütununda isim çıkmaması lazım.birde yazdırdığım zaman d ve h sütunuda dahil çıksın diğer sütunlardaki bilgiler çıkmasın.
 

Ekli dosyalar

wezyr

Altın Üye
Katılım
14 Nisan 2006
Mesajlar
110
Excel Vers. ve Dili
OFFİCE 2010-2019
Altın Üyelik Bitiş Tarihi
21-04-2029
sorum güncel
dosya 22. mesajda
 
Son düzenleme:

wezyr

Altın Üye
Katılım
14 Nisan 2006
Mesajlar
110
Excel Vers. ve Dili
OFFİCE 2010-2019
Altın Üyelik Bitiş Tarihi
21-04-2029
ben senin soruna cevap vermedim ben kendi sorumun cözümünü arıyorum
benim sorum için dosyam 22. mesajdadır...
iyi çalışmalar dilerim

Dosya ektedir...
hafta içi 2 kişi hafta sonu ve tatil günleri tek kişi olacak şekilde 7- 8 kişilik nöbet cizelgesi...
 

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Arkadaşlar bu nöbet programını okula göre uyarladım ama nöbet listesi oluştur butonuna basdığım zaman ı ve j sütununda isim çıkmaması lazım.birde yazdırdığım zaman d ve h sütunuda dahil çıksın diğer sütunlardaki bilgiler çıkmasın.
Syn. Erdenek,
Kullandığınız kodu aşağıdakiyle değiştirin.
Kod:
Sub nobetlistesi()
Randomize
say = WorksheetFunction.CountA([b:b])
son = [d65536].End(3).Row
Range("e3:h33").ClearContents
ekle = 1
20 encok = WorksheetFunction.Max([c:c])
For a = 1 To [b65536].End(3).Row
10 sira = Int(say * Rnd + 1)
isim = Cells(sira, "b")
deg = Cells(sira, "c")
satir = Range("e3:h" & son)(hucresay + ekle).Row
say1 = WorksheetFunction.CountIf(Range("e" & satir & ":h" & satir), isim)
If deg > encok Or say1 > 0 Then GoTo 10
hucresay = hucresay + 1
Range("e3:h" & son)(hucresay) = isim
If Range("e3:h" & son).Count = hucresay Then Exit Sub
Next
GoTo 20
End Sub
 

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
sorum güncel
dosya 22. mesajda
Syn. wezyr,
Sizin isteğinize ancak haftasonu bakabilirim. Bu kadar şartı biraraya getirirken başımdaki işlemciyi yakmazsam eğer, sanırım bir çözüm(?) üretebilirim.:)
 

wezyr

Altın Üye
Katılım
14 Nisan 2006
Mesajlar
110
Excel Vers. ve Dili
OFFİCE 2010-2019
Altın Üyelik Bitiş Tarihi
21-04-2029
teşekür ederim üstad... acelemiz yok ... ama bakarsan çok makbule geçer hak geçmemesi açısından...
 

erdenek

Altın Üye
Katılım
5 Mart 2008
Mesajlar
885
Excel Vers. ve Dili
EV:EXCEL 2010-TÜRKÇE
İŞ:EXCEL 2010-TÜRKÇE
Altın Üyelik Bitiş Tarihi
31-01-2026
Syn. Erdenek,
Kullandığınız kodu aşağıdakiyle değiştirin.
Kod:
Sub nobetlistesi()
Randomize
say = WorksheetFunction.CountA([b:b])
son = [d65536].End(3).Row
Range("e3:h33").ClearContents
ekle = 1
20 encok = WorksheetFunction.Max([c:c])
For a = 1 To [b65536].End(3).Row
10 sira = Int(say * Rnd + 1)
isim = Cells(sira, "b")
deg = Cells(sira, "c")
satir = Range("e3:h" & son)(hucresay + ekle).Row
say1 = WorksheetFunction.CountIf(Range("e" & satir & ":h" & satir), isim)
If deg > encok Or say1 > 0 Then GoTo 10
hucresay = hucresay + 1
Range("e3:h" & son)(hucresay) = isim
If Range("e3:h" & son).Count = hucresay Then Exit Sub
Next
GoTo 20
End Sub

ellerine sağlık arkadaşım.
 

wezyr

Altın Üye
Katılım
14 Nisan 2006
Mesajlar
110
Excel Vers. ve Dili
OFFİCE 2010-2019
Altın Üyelik Bitiş Tarihi
21-04-2029
leumruk üstad bugün bakabilrsen çok sevinirim malum ay sonu yarın yeni listeyi duyurmam gerekiyor.
 

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Merhaba,
Örnek bir dosya hazırladım.
1- Solda yazılı isim listesinden herhangi bir isme çift tıkladığınızda karşınıza bir form çıkacak bu formdan seçili ismin hangi günlerde nöbet tutacağını seçebilirsiniz. Seçtiğiniz bu isimlere listede o günleri kapatacaktır ve bu isimler dağılıma dahil edilmeyecektir.
2- Dağıtım biraz uzun sürebilir. İşlem gereğinden fazla uzarsa muhtemelen koşullar sağlanmıyor demektir. ESC tuşu ile işlemi sonlandırabilirsiniz. ESC ile sonlandırma yapabilmek için herhangi bir hücrenin seçili olması gerekiyor.
3- Resmi tatil olan gün hangisiyse o tarihteki hücrelerden harhangi birine çift tıkladığınızda o hücreyi kapatmış olursunuz. Yani o hücreye nöbet yazılmaz. İptal için aynı hücreye tekrar çift tıklamanız yeterlidir.
 

Ekli dosyalar

Son düzenleme:

wezyr

Altın Üye
Katılım
14 Nisan 2006
Mesajlar
110
Excel Vers. ve Dili
OFFİCE 2010-2019
Altın Üyelik Bitiş Tarihi
21-04-2029
teşekkür ederim eline sağlık
 

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Merhaba,
33. mesajdaki dosya güncellenmiştir. Kodlama sırasında ufak bir ayrıntıyı gözden kaçırmışım. Bu da gereksiz döngü oluşturuyor ve kodun gereğinden fazla yavaşlamasına sebep oluyordu.
Yeni düzenleme ile çok daha süratli sonuca ulaşabilirsiniz.
 
Katılım
3 Temmuz 2009
Mesajlar
3
Excel Vers. ve Dili
Excel 2010
Merhaba,
Örnek bir dosya hazırladım.
1- Solda yazılı isim listesinden herhangi bir isme çift tıkladığınızda karşınıza bir form çıkacak bu formdan seçili ismin hangi günlerde nöbet tutacağını seçebilirsiniz. Seçtiğiniz bu isimlere listede o günleri kapatacaktır ve bu isimler dağılıma dahil edilmeyecektir.
2- Dağıtım biraz uzun sürebilir. İşlem gereğinden fazla uzarsa muhtemelen koşullar sağlanmıyor demektir. ESC tuşu ile işlemi sonlandırabilirsiniz. ESC ile sonlandırma yapabilmek için herhangi bir hücrenin seçili olması gerekiyor.
3- Resmi tatil olan gün hangisiyse o tarihteki hücrelerden harhangi birine çift tıkladığınızda o hücreyi kapatmış olursunuz. Yani o hücreye nöbet yazılmaz. İptal için aynı hücreye tekrar çift tıklamanız yeterlidir.
Kardeşim sana zahmet bu dosyadaki listeyi günlük 3 kişinin nöbet tutacağı şekilde ayarlayabilir misin?
yani e ve f sütunlarının yanına bir sütun daha eklemen yeterli olacaktır. şimdiden teşekkürler
 
Son düzenleme:
L

lasmar

Misafir
bu çalışmaya destek veren uzman arkadaşlar gerçekten güzel sonuçlara vardık. ama sanırım herkese hitap edecek bir çalışma için son olarak bir örnekle sorum olacak, sanırım özellikle 24 saat çalışılan birimler için vazgeçilmez olacaktır.

ekli dosyada yardım istediğim;
- nöbetçi sayısı sınırlandırması olmasın ve bu sayı belirli bir hücrede kullanıcı tarafından belirlense, (bkz; C3)

-:yardim: LİSTE OLUŞURKEN HER GÜN AYRI AYRI HESAPLANSA
(yani haftanın yedi günü ayrı ayrı herkese adil şekilde dağıtılsa)


-tarihi belli olan resmi tatilller ve bunlara sonradan eklenen idari tatiller (birleştirilen dini bayram günleri gibi) için bir tarihi girme alanı oluşturulsa ve yarım gün çalışılan günler renklendirilerek belirlense (bkz; m35:m65)

Önceki sonuca bakarak kıymetli uzmanlarımızdan yine güzel sonuçlar bekliyorum. Şimdiden teşekkürler.
 

Ekli dosyalar

Katılım
28 Kasım 2010
Mesajlar
2
Excel Vers. ve Dili
2003 türkçe
farklı bir tablo.

merhaba arkadaşlar. örneklerin tamamını inceledim. aslında aradığım şeye yakın ama yazılım bilgim çok fazla olmadığından kendi istediğim tabloya uyarlayamadım bu yaptıklarınızı. eğer bana zaman ayırıp, çok fazla olduğunu düşünmediğim uyarlamayı benim dosyama yapabilirsseniz sevinirim. şimdiden teşekkür ederim.

not: bu tablo hastane görevlilerinin aylık nöbet tablosudur. bazı kaideleri vardır. onu da dosyanın içerisinde belirttik zaten.
 

Ekli dosyalar

Katılım
28 Kasım 2010
Mesajlar
2
Excel Vers. ve Dili
2003 türkçe
Arkadaslar yardım edecek kimse yok mu? Sadece rastsal sayı belirlemesi dahi yeterli olacaktır benim için. Teşekkürler.
 
Katılım
25 Nisan 2012
Mesajlar
1
Excel Vers. ve Dili
2007 tr
burakugur pansiyon nöbet programı diye bişey var, aldık rahatladık hocam, excel le bu iş olmuyor
 
Üst