Vardiya Uygulması

Katılım
19 Aralık 2010
Mesajlar
28
Excel Vers. ve Dili
Office 2007 TRK
Altın Üyelik Bitiş Tarihi
21/12/2018
Vardiya üzerine bir çalışma var, fakat bu çalışmayı 60 kişi üzerinden yapmaya çalışıyorum yapamadım.
Vardiya kodlarına göre "VARDİYA DAĞIT" makrosuna çalıştırınca 6 gün olacak şekilde;
( 1 ) 19 KİŞİ OLACAK 07:00-15:00
( 2 ) 19 KİŞİ OLACAK 15:00-23:00
( 3 ) GECE GÖREVLERİ 7 KİŞİ OLACAK 23:00-07:00
( 4 ) VARDİYA SAATLERİNDENGÜNLÜK MEVCUT 19 KİŞİDEN FAZLA OLURSA (4) GÖSTERİLECEK 13:00-21:00

HAFTA İÇİ BİR GÜN İZİN OLACAK ŞEKİLDE 19 KİŞİDEN FAZLA OLAN GÜNLÜK İZİNLİ OLACAK (HAFTA TATİLİ (HT)).
HAFTA SONU HAFTA TATİLİ YOK.

Vardiya planlaması 6 gün olacak, yani (1), (2) ve (3) de bir personel 6 gün çalışacak.
 

Ekli dosyalar

Son düzenleme:

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Aşağıdaki kodları deneyiniz.

İstediğiniz şartlardan 4 ile ilgili olanı ve 6 günlük durumu anlayamadım.

Kod:
Sub vardiya()
    [F14:AJ73] = ""
For gün = 6 To 36
10:
    kişi = WorksheetFunction.RandBetween(14, 73)
    If Cells(kişi, gün) = "" Then
        If Cells(74, gün) < 19 Then
            Cells(kişi, gün) = 1
        ElseIf Cells(75, gün) < 19 Then
            Cells(kişi, gün) = 2
        ElseIf Cells(76, gün) < 7 Then
            Cells(kişi, gün) = 3
        Else
            Cells(kişi, gün) = "HT"
        End If
        Range(Cells(14, gün), Cells(73, gün)).Select
        If gün > 10 And WorksheetFunction.CountIf(Range(Cells(kişi, gün - 5), Cells(kişi, gün)), "HT") = 0 And _
                WorksheetFunction.Weekday(Cells(13, gün), 2) < 6 Then
            Cells(kişi, gün) = "HT"
            GoTo 10
        End If
        If WorksheetFunction.CountBlank(Range(Cells(14, gün), Cells(73, gün))) > 0 Then GoTo 10
    Else
        GoTo 10
    End If
Next
        
End Sub
 
Katılım
19 Aralık 2010
Mesajlar
28
Excel Vers. ve Dili
Office 2007 TRK
Altın Üyelik Bitiş Tarihi
21/12/2018
Yusuf Hocam ilginizden dolayı teşekkür ederim. (1-2-3-4) kodlu vardiya mevcudu 19 kişiden fazla olunca görev vereceğim arkadaş, normalde benim 19 kişiye ihtiyacım var ama hazır mevcut 19 kişiden fazla olunca (1-2-3-4) kodlu grupta arkadaşları sıra ile göreve biraz daha geç getirmek istiyorum. Özellikle cumartesi ve pazar günleri günlük izin olmadığı için mevcudum çok olacak onları (4) kodu olarak vardiya listemde belirlemek istiyorum.

6 günde bir vardiya değişimi yapacağım; yani bir arkadaş (1)'de 6 gün, (2)'de 6 gün ve (3)'de altı gün çalışacak.

Yusuf hocam kodu kopyaladım ve makroya yapıştırdım fakat 6 gün yaptıktan sonra sistem takılıyor ve Ecxel kitleniyor.
 

Ekli dosyalar

Son düzenleme:

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Diğer isteklerinizi yapabilmem zor maalesef.

Excel kilitleniyorsa tüm Exceli kapatıp tekrar açıp deneyin. Bende de birkaç kez oldu maalesef.
 
Katılım
19 Aralık 2010
Mesajlar
28
Excel Vers. ve Dili
Office 2007 TRK
Altın Üyelik Bitiş Tarihi
21/12/2018
İlginizden dolayı çok teşekkür ederim.
 
Üst