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

Katılım
17 Şubat 2007
Mesajlar
19
Excel Vers. ve Dili
2003 türkçe
sadece cumartesi leri nöbet olacak şekilde nasıl yapabilirim hafta içi ve pazarlar yok
teşekkürler
 
Katılım
23 Ekim 2011
Mesajlar
1
Excel Vers. ve Dili
office2005
nöbet listesi için yardım lütfen

bir çok örneği inceledim üzerinde uğraştım ama daha gelişmiş bir şey lazım bana. istediğimiz kadar insan ekleyebilelim. istediğimiz kişiye istediğimz kadar nöbet yazabilelim. istediğimiz kadar bölge ekleyebilelim. aynı bölgeye aynı hafta içinde tekrar nöbet yazılmazın. aynı güne bölgelerine bakılmaksızın aynı kişiye tekrar nöbet yazılmasın. çok şey istiyorum ama. YARDIM LÜTFEN
 

Ekli dosyalar

Katılım
29 Kasım 2017
Mesajlar
2
Excel Vers. ve Dili
2010
Altın Üyelik Bitiş Tarihi
24-06-2023
merhaba 16 kişilik bir ekip var ve rastgele hafta içi nöbet tablosu oluşturmak istiyorum.

buarada yazan kodu denedim ama hata veriyor. yardımcı olabilirmisiniz?
 
Katılım
27 Temmuz 2022
Mesajlar
15
Excel Vers. ve Dili
excel 2016 türkçe
Altın Üyelik Bitiş Tarihi
29-07-2023
Bende dosyayı tamamlamıştım ekliyorum. Sn Mustafa beyle benzer bir mantık kullanmışız.


Mustafa beye Not: Çalışmanız, aynı tarihte bir isme birden fazla nöbet yazabiliyor. Bunu düzeltirseniz güzel bir çalışma olacak.

BU KODUNUZU KENDİ TASLAĞIMA UYGULAMAYA ÇALIŞTIM ANCAK BİR TÜRLÜ YAPAMADIM

YARDIMCI OLABİLİR MİSİNİZ ACABA RİCA ETSEM KODU BENİM TASLAĞIMA UYARLAYABİLİR MİSNİZ

* AYRICA KODA ŞUNU EKLEYEBİLİR MİYİZ BİR KİŞİ İÇİN ARDA ARDA İKİ GÜNE NÖBET YAZILMASIN



KOD


Sub nobetlistesi()
Randomize
say = WorksheetFunction.CountA([b:b])
son = [d65536].End(3).Row
Range("e3:j33").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:j" & son)(hucresay + ekle).Row
say1 = WorksheetFunction.CountIf(Range("e" & satir & ":j" & satir), isim)
If deg > encok Or say1 > 0 Then GoTo 10
hucresay = hucresay + 1
Range("e3:j" & son)(hucresay) = isim
If Range("e3:j" & son).Count = hucresay Then Exit Sub
Next
GoTo 20
End Sub
 

Ekli dosyalar

Üst