Çözüldü Nöbet Listesi Makro Düzenleme

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

HANEDANNN

Normal Üye
atacagım makro kodunda aylık 46 ıncı satıra kadar olan personele otomatik mesai atıyor ,ama ben aylık olarak personel sayısını değiştirecegim için bazen 40,43 veya 42 olarak değişecek satırlar ama değiştiremedim,yardımcı olur musunuz ,
CSS:
You must log in to view content
(54 satır)
 
Malum olacağı üzere; gerçek belgenizde yapacağınız işlemi tam olarak öngörmemiz pek mümkün değil.
Örneğin;
-- elle yazacağınız veri miktarı hakkında fikrimiz yok,
-- 16 ve 8 sayılarının sütunda 12'şer kez yazılma koşulu var,
-- 16 ve 8 sayılarının da gün sütunlarında mümkün olduğunca dengeli (örneğimizde 9) dağılması gerekiyor.

Bu koşulların sağlanabilmesi için, kişi sayısıyla;
-- 16 ve 8 sayılarının, gün sütunlarında tekrarlanma sayısı sınırı (12) ve
-- kişinin satırındaki tekrarlanma sınırı (9)
arasında sayısal olarak ifade edilebilecek bir ilişkinin olması gerektiğini düşünüyorum.

Bu sayısal ilişkileri netleştirirseniz kodda gerekli düzenlemenin yapılması kolaylaşacak gibi görünüyor,
.
 
Kişi sayısı her ay değişebiliyor örneğin bı ay 45 kişi,diğer ay 40 kişi olabiliyor,bunu her ay sormamak için nasıl değişiklik yapabilirim
16 ve 8 lerin dagilimiyla ilgili bir sorun yok hocam,sadece kişi sayısı azalıp arttiginda sorun oluyor
 
Bence bundan önceki meesajımı bir kez daha okuyun.

Kişi sayısını 10 yaptınız diyelim; gün sütununa 12 tane 16 ve 12 tane 8 yazılamaz ki,
Kişi sayısı 30 ve bunlardan 5 tanesi için kendi satırının tamamına Yİ (yıllık izin) yazarsanız, bu kişiler için 9 adetlik
16 ve 8 yazma sınırı nasıl çalışacak?
Bir önceki gün sütununa 16 yazıldığında o güne ait hücre de boş kalacak unutmayın.

Yani kişi sayısıyla;
-- gün sütununa yazılacak 16/8 sayısı adetleri ve
-- kişi için 16/8 sayısı adetleri
arasında matematiksel bir ilişki olmalıdır. Böyle bir ilişki olmazsa kodun işlemi tamamlaması mümkün olmayabilir doğal olarak.

Örneğin şöyle bir şeyler düşünmelisiniz;
gün sütununa, kişi sayısının 1/3'ü kadar 16, 1/3'ü kadar 8 yazılabilir, kalan 1/3'ü BOŞ olabilir,
kişi satırına en fazla aydaki gün sayısının 1/2'si kadar 16/8 yazılabilir, diğer 1/2'si BOŞ olabilir.
.
 
Dediğinizi anladım hocam iki sorum olacak ilk olarak kişi sayısını en az kaçta tutabiliriz,bu gerekli çünkü her ay personel sayısı sabit kalmıyor 1,2 veya 3 artıp azalabiliyor,tabi ki kişi sayısı azalmıyor 38 altına inmez mesela,diğer konu örneğin yıllık izin,rapor veya boşluk istendiğinde personel sütuna atanacak 8 ve 16 toplam 24 tane boş hücreye gelecek diyelim ki gelmedi yukarıda belirttiğim nedenlerden dolayı o zaman boşluk sayısı kadar atayabilir,24 boşluk değilde 20 boşluk var örneğin şutunda ozaman 10 10 atasa olur mu
 
Bence sayı/adet değil mümkün olduğunca, kişi sayısı üzerinden hesaplanacak ORAN şeklinde ifade edilmesi gereken hususlar.
1 günde 16 yazılacak kişi sayısı sanıyorum SABİT ( katlarda, kapıda vs nöbet zorunlu), ancak 8 yazılacak kişi sayısı da aynı şekilde 12 olarak SABİT midir?

Örneğin kişi sayısı 37, ayın 1'inci gününde 12 tane 16, 12 tane 8 yazıldı, bu sütunda da 8 kişi için Yİ veya BOŞLUK yazmıştınız,
5 hücreye makro bir veri yazmayacak, boş bırakacak.
Bir sonraki güne geldik, o gün sütununda da aynı 10 kişi için Yİ veya BOŞLUK yazmıştınız, ikinci gün için veri yazılabilecek kişi adeti
37 (kişi sayısı) - 10 (Yİ veya BOŞLUK) - 12 (önceki gün 16 yazılan hücre adeti) = 15. Dolayısıyla bu gündeki 15 hücreden 12'sine 16 yazılabiliyor durumda.

Gördüğünüz gibi mevzu KOLAY değil.

Şimdi bir süre bilgisayar başında olmayacağım.
İsterseniz siz, muhtemel en uç senaryoya (çok kişinin izinli olduğu dönem mesela) göre önceki örnek belge üzerinde
makro çalıştırmadan-elle yazarak, 1 aya ait tablonun tümüne, verilerinizi yazın (kişi bazlı 16 sayısındaki dengeli dağılımı da gözeterek elbette)
ve bu haliyle belgeyi kaydedip foruma ekleyin. Üstünde düşünebilelim, denemeler yapabilelim.
Yani şimdiye kadar el yordamıyla nasıl hazırlıyorsanız o şekilde elle yazarak olması gereken durumu örneklendirin.

Kolay gelsin.
.
 
Hocam örnekte attığım gibi bir panel yapıp girdiğimiz sayılara göre atama yapamaz mıyız böylelikle kişi sayısı ve günlük çalışacak eleman sayılarını kontrol edebiliriz.
hocam bu çalışmayı sadece kendim için değil tüm çalışan kişiler için örnek bir taslak olmasını istiyorum.biz 40-45 kişi çalışıyoruz ama 10 kişi çalışanda var 30 kişi çalışanda.O yüzden eksikleri sizlerle paylaşıyorum.
 

Ekli dosyalar

Dediğinizi anlıyorum hocam,bahsettiğiniz durumlarda bizler 24 tutuyoruz bu şekilde dengeleme sağlıyoruz tabi ki bu uç durumlarda oluyor.çok nadir,
24 oldugu zaman bi satıra hem 8 hem 16 yazılmış oluyor bu da bize 1 satır daha kazandırır,bi üst örnekte attığım gibi paneli oluşturabilirsek bu olası hataları kapatıp daha çok insanın kullanabileceği şekilde olacaktır.

En kısa sürede görüşmek dileğiyle.Teşekkürle.Kolay gelsin
 
..........................
İsterseniz siz, muhtemel en uç senaryoya (çok kişinin izinli olduğu dönem mesela) göre önceki örnek belge üzerinde
makro çalıştırmadan-elle yazarak, 1 aya ait tablonun tümüne, verilerinizi yazın (kişi bazlı 16 sayısındaki dengeli dağılımı da gözeterek elbette)
ve bu haliyle belgeyi kaydedip foruma ekleyin. Üstünde düşünebilelim, denemeler yapabilelim.
Yani şimdiye kadar el yordamıyla nasıl hazırlıyorsanız o şekilde elle yazarak olması gereken durumu örneklendirin.
.................
Kusura bakmayın ama söylemem lazım; bir önceki mesajı yine okumamışsınız anlaşılan,

Sizden, önceki konu açılışından bu yana üzerinde çalışılan örnek belgedeki yapıya göre,
muhtemel en uç duruma ilişkin senaryo (en az çalışan sayısı, en fazla Yİ vs dolayısıyla aktif olmayan personel olması gibi)
gerçekleştiğinde elle yazarak tabloyu nasıl dolduruyorsanız o şekilde aylık tabloyu doldurup foruma eklemenizi istemiştim ki
olayın çözümüne ilişkin mesafe katedilebilsin.

Burada, kullandığınız belge ve mevcut koşullara göre; ortaya çıkan sorunun/ihtiyacın giderilmesine yönelik destek olmaya çalışıyorum.
Yoksa; genel-geçer denilebilecek nitelikte, 2 vardiya/3 vardiya, haftasonu/resmi tatil/izin/rapor/süt izni vs tüm seçenekleri içeren
(donanımcıların deyimiyle tak-çalıştır, amiyane deyimle hap gibi hazır)
bir dosya hazırlamakla uğraşmıyorum.
Son cevabınızdaki örnek belgenin, şimdiye kadar üzerinde durduğumuz belgeyle/olayla bir alakasını da göremiyorum.
.
 
Moderatörün son düzenlenenleri:
24 'lerin anlamı nedir?
24'lerin çoğu kırmızı renklendirmişsiniz ancak kırmızı renklendirilmeyenler de var.
Bunların öncesi/sonrası için ne yapılacak? 16 gibi mi düşünülecek?
Bir gün sütununa 24 sayısı için en az/en fazla kaç adet yazılabilir. Yoksa güne göre değil tüm ay için mi bir sayı sınırı var?
Yoksa 24'leri serbest olarak, tıpkı Yİ gibi siz elle mi yazacaksınız?
.
 
Renklendirmelerin bı anlamı yok hocam,ben size bu ay ki listemizi attım çok yoğun olduğu için
24 ler tüm gün mesaisi hem 8 hem 16 yi kapsıyor,24 leri 16 gibi düşüneceğiz sonraki günü boş olması lazım,
sütüne gelecek 24ler iki şekilde de olabilir hocam ,örneğin sütuna 12 adet 8 ve 16 koyacağız ama girdiğimiz istekler sonucunda sadece 10 ar adet koyulabiliyoruz diyelim bu nokta da bazı sutunlari 24 e çevirip dengeyi kurabilir,24 ler hem gece hem gündüz kapsıyor,biraz zor bir denklem
İkinci olarak ta örneğin 12 adet 8 ve 16 koyacagiz istekler sonucunda 10 adet sığıyor,o zaman o 10 adeti koyacak ,listeyi biz kontrol edip ,24 leri kendimiz yazacagiz

24 sınırı yok hocam liste dönene kadar yazılabilir,12 der sınırına ulaşana kadar
 
Tekrar merhaba Sayın @HANEDANNN .

Bir de ekteki belgeyi, içerisine yazdığım açıklamalar doğrultusunda,
örnek veri aktarması yaparak veya elle veri girişi yaparak dener misiniz?

Kişi sayısıyla ilgili deneme yapmak isterseniz, ya kapsam dışı tutulacak personel ismini alttan yukarı doğru silerek
ya da kapsam dışı bırakılacak personelin satırındaki hücrelerin tümüne BOŞLUK/ya da başka bir şey yaarak deneyin..
Denemelerinizi, BEYAZ ve KIRMIZI OKları kullanarak yapınız.

VBA kısmı geçici olarak şifrelenmiştir, siz tamam dediğinizde şifresiz halini paylaşacağım elbette.
.
 

Ekli dosyalar

Hocam gönderdiğiniz dosyayı inceleyip denmeler yaptım,öncelikle 24 ve Yİ yazınca renk değişimi olması çok güzel olmus teşekkür ederim
AJ2 satırındaki kodda yıllık izine artı olarak R (rapor) kodu eklemiştim hocam
Kod:
You must log in to view content
(1 satır)
böylesizde sizde eklerseniz sevinirim,bide R yazınca da bi renklendirme olursa sevinirim.
otomatik atamalar genel olarak iyi hocam 12 kriteri bazen 10 ve 11 olarak kalıyor boşluk olmasına rağmen ikinci olarak 12 ye tamamlayamadığı kısımlarda 24 atayabilirmi rastgele otomatik olarak
sutundaki 8 ve 16 ları toplarken 24 de ekleyelim hocam ,yani =eğersay(B2:B44;8) VEYA=eğersay(B2:B44;16) OLAN YERLERE EK OLARAK 24 DE EKLESEK ÇÜNKÜ 24 DE HEM 8 HEM 16 VAR BUDA BİZİ 12 KRİTERİNE DAHA ÇOK YAKLAŞTIR
 
Koşullu biçimlendime uygulayarak R yazılanları renklendirme işlemini kendiniz de halledebilirsiniz.
Renklendirme işlemi için makro/kod kullanılmıyor zaten, işlem koşullu biçimlendirme işlemidir.

Ancak; son mesajınızda 24 değeri için yazdıklarınızı, tam olarak anladığımı söyleyemem.
Nasıl 8 ve 16 değerleri için mümkün oluyorsa her güne ait sütunda 12'şer kez yazılmalı demişseniz,
24 sayısı için de her güne ait sütunda.... adet 24 yazılmalıdır gibi net sayı ifade etmelisiniz.

Yok eğer belgede, kod'un son haliyle veri yazma tamamlandıktan sonra,
herbir gün sütnu için 8 ve 16'ların toplamı 24'ten az ise, 16'ların bir kısmını (8'ler+16'lar 20 ise 16'ların 4 tanesini 24 yapmak gibi)
sayısını mı artırmak istiyorsunuz?
16'ların diyorum çünkü, 8'lerden biri 24 olarak değiştirilirse, sonraki günün boşaltılması gerekeceğinden 8'lere dokunmamak gerekir.
.
 
Son anlattığınız gibi hocam 8 lere ekleme yapamayız, eksik kalan kısımlarda 16 lara 8 ekleyerek 24 yapacagız
bu işlemi makro ile otomatik yapabilir miyiz yoksa veri yazma işlemi bittikten sonra,ellemi ekleme yapmalıyız

bir şey daha sormak istiyorum hocam kişi sayısındaki değişiklik ve sutün üzerindeki yani şuan için 12 olarak yaptığımız mesaileri en son mu çözeceğiz veya çözülebilir mi ?
teşekkürler, kolay gelsin
 
İşte en baştan beri sorduğum soruya siz yeni geldiniz.
12 sayısı ile personel sayısı arasında ORANSAL bir ilişki olmalıdır diye en baştan beri soruyorum ancak siz ısrarla
12 adet 16 ve 12 adet 8 yazılacak diyorsunuz.
Yanlış düşünmüyorsam bu 12 sayısı ile 128 saatlik sınırlama arasında, kafanızda bir ilişki var. Bunu biraz açmak gerekiyor.
Personelci olmadığım için en küçük ayrıntıya kadar (tabi mevzuat veya uzun uzun anlatımlar yerine Excel dilinde
yani sayılar/oranlar/satırlar/sütunlar vs,şeklinde) açıklamanız gerekecek.
Belki anlamayamadığım için tekrar tekrar açıklamanız da gerekebilir. ;)

Burada bir hususu daha netleştirmek lazım; o da Resmi Tatil ve Cumartesi/Pazar günlerinin durumu,
bu günlere veri yazılıp yazılmayacağı, yazılacaksa buna ilişkin kural ve sınırlamalar.

Yani olayı siz kafanızda çözeceksiniz ve esprili söylersem siz Türkçe'sini söyleceksiniz, ben de bunun Excelcesini yazmaya çalışacağım.
 
Kusura bakmayın hocam,ufak bi anlaşmazlık oldu ama o konuyu çözdük.:)
hocam 12 sayısında kısıtlama istememdeki amaç biz gece de gündüzde 12 kişi çalışıyoruz.bu sayının artıp azalmasını istememse başka insanlarında faydalanması örneğin bazı birimler gündüz 8 kişi fakat gece 2 kişi çalışıyor.
gerekli yerleri elimden geldiğince açıklarım hocam.devlet 128 saatten fazla mesai parası vermiyor o yüzden o parametreyi aşmaması lazım
Resmi Tatil ve Cumartesi/Pazar günleri bizim için 8,16 ve 24 yazılınca mesai sayılıyor fakat Yİ ve R olunca sayılmıyor
yıllık izin ve rapor hafta içi olursa mesai sayılıyor, resmi tatil cumartesi/pazar mesai sayılmıyor
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst