Lokasyon Bazlı Full Time ve Part Time Tablosu hk.

Bwtunc

Altın Üye
Katılım
28 Kasım 2008
Mesajlar
156
Excel Vers. ve Dili
değişken
Altın Üyelik Bitiş Tarihi
15-08-2026
Merhaba karmaşık bir uygulama hakkında desteğinizi rica edeceğim.

Bir şirkette ki Full time ve Part time çalışanların sayısı ve son ayda giren çıkan kişi sayılarını hesaplatmam gerekiyor. Henüz iç içe formülleri tam olarak kuramadığımdan yapamıyorum. Ve işin içine tarih girince de tam arap saçına dönmüş durumda. Bu konuda destek verirseniz sevinirim.

Kafa karıştırmamak için açıklamayı dosyaya ekledim.
 

Ekli dosyalar

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba.

Dosya ekte.
.
 

Ekli dosyalar

Katılım
31 Ocak 2012
Mesajlar
2,430
Excel Vers. ve Dili
Excel 2010 , Türkçe
Altın Üyelik Bitiş Tarihi
24.01.2019
selam,
Ömer Bey in cevabına bakmadım. Doğruluğundan eminim..
Bu örnek de alternatif olsun.
 

Ekli dosyalar

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
selam,
Ömer Bey in cevabına bakmadım. Doğruluğundan eminim..
Bu örnek de alternatif olsun.
Teşekkürler Sayın sakman.

İkinci bir göz ve bakış açısının varlığı her zaman daha iyi sonuca götürür.
Soruyla ilgili yanlış anlama durumları da olabilir elbette.

Ayrıca titizliğiniz ve detaylara önem veriyor olmanız forum üyelerinin tümünün malumudur.

Yine muhkem bir belge hazırlamışsınız.
.
 
Katılım
31 Ocak 2012
Mesajlar
2,430
Excel Vers. ve Dili
Excel 2010 , Türkçe
Altın Üyelik Bitiş Tarihi
24.01.2019
Teşekkürler Sayın sakman.

İkinci bir göz ve bakış açısının varlığı her zaman daha iyi sonuca götürür.
Soruyla ilgili yanlış anlama durumları da olabilir elbette.

Ayrıca titizliğiniz ve detaylara önem veriyor olmanız forum üyelerinin tümünün malumudur.

Yine muhkem bir belge hazırlamışsınız.
.
Nezaketinizden dolayı size Çok Çok teşekkür ediyorum..
 

Bwtunc

Altın Üye
Katılım
28 Kasım 2008
Mesajlar
156
Excel Vers. ve Dili
değişken
Altın Üyelik Bitiş Tarihi
15-08-2026
Merhaba.

Dosya ekte.
.


selam,
Ömer Bey in cevabına bakmadım. Doğruluğundan eminim..
Bu örnek de alternatif olsun.
Öncelikle emekleriniz için teşekkür ederim harika sonuçlar çıkmış. Benim anlatım şeklimden olsa gerek Ft bölümünde işten çıkmış personelleri Ömer bey kayda almamış ama formül mantığını görmem için bakarsanız çok sevinirim Ömer Bey.

Sakman26 Bana sürekli destek veren yardımsever insan birşey soracağım. Soracağım konu bir önceki yardımınızda da mevcuttu.

Kod:
=TOPLA.ÇARPIM((Bölge=$A14)*(Lok=$B14)*(çş=O$1)*(çıkış<>""))

yukarıda ki kodda Lokasyonu = Lok , Çalışma şeklini = Çş olarka tanımlamışsınız. Bun uyapmanızda ki amaç nedir? Ve bu tanımları excel nasıl algılıyor?

Teşekkürler.
 

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
İşinizin görülmesi adına arkadaşların izniyle cevap vermeye çalışayım: Muhtemelen bu tanımlamalar Ad tanımlamasıdır ve Formüller sekmesinde Ad Yöneticisinden bu tanımlamaları görebilirsiniz.
 

Bwtunc

Altın Üye
Katılım
28 Kasım 2008
Mesajlar
156
Excel Vers. ve Dili
değişken
Altın Üyelik Bitiş Tarihi
15-08-2026
İşinizin görülmesi adına arkadaşların izniyle cevap vermeye çalışayım: Muhtemelen bu tanımlamalar Ad tanımlamasıdır ve Formüller sekmesinde Ad Yöneticisinden bu tanımlamaları görebilirsiniz.
Tam buldum nereden olduğunu diye yazmaya gelmişken cevabınızı gördüm. Çok teşekkür ederim hem sizin yazmanız hemde araştırmak öğrenmeyi güçlendiriyor.

Sakman üstadım müsaadenle bir kaç hususta sorum olacak. Hazırlamış olduğunuz Formül Lokasyon 1'e çıktıları yazarken neden 2. sırada ki lokasyonu es geçip 8. sıradaki lokasyon 2'ye yazıyor. Geçenlerde sizinle paylaştığım ana tabloyu yapıştırdığımda da doğru sonucu alamıyorum. Harf eşleşmeme hatası dışında bir hata ama çözemedim.

Yani:

Lokasyon 1 22 13 9 13
Lokasyon 2
Lokasyon 3
Lokasyon 4
Lokasyon 5
Lokasyon 6
Lokasyon 1
Lokasyon 2 23 17 7 17
Lokasyon 3 16 7 8 7



Çalışmayan isimli bir hücremiz var aynı değerler işten ayrılan çalışanlar kısmında da var. Bu satırı kaldırdığımda çok fazla döngüsel hata aldınız uyarısı veriyor.




Aşağıda ki kod için bir sorum olacak.

Kod:
1) =MAK(EĞERHATA(KAÇINCI("zzzzz";Liste!$A:$A);SATIR(Liste!$A$1));EĞERHATA(KAÇINCI(9,9999E+307;Liste!$A:$A);SATIR(Liste!$A$1)))

// Burda bulamayacağı bir koşul veriyoruz ve diyoruz ki hatalıysa en son  hangi değerde kaldın bana yaz. Ama bir şey soracağım  neden 2. Eğerhataya ihtiyaç duyduk. İlk eğer hatada da  aynı sonucu veriyor?


Ömer Üstad dosyayı özenle inceledim daha önce Sakman arkadaşın desteği ile tanışmış olduğum dizin formülleri ile çalışmışsın bu nedenle şu an çok yorumlayamıyorum. Ama inanılmaz sade bir tablo emeğine yüreğine sağlık. Fakat sonuçlarda hatalar var. Bunun nedeni de işten çıkanları hesaba koymuyor formül. Örneğin Lokasyon 2 'de Tüm çalışan Ft sayısı 40 formülün verdiği de bu sonuç. Ama 17 işten ayrılan olduğu için doğru sonucun 23 olması gerekiyor.


Sevgi ve saygılarımla.
 
Katılım
31 Ocak 2012
Mesajlar
2,430
Excel Vers. ve Dili
Excel 2010 , Türkçe
Altın Üyelik Bitiş Tarihi
24.01.2019
selam,
1 - Ad Tanımlamaları : Özellikle, dinamik yapı için kullanıyorum. Yani formülle bilgi alınacak Liste bugün için 200 satır olsun. Yarın bu 400 olabilir ya da 150 ye düşebilir. Her defasında formüllerde hücre referans adreslerinde değişiklik yapmaya gerek olmadan formül kullanılabilinir. Dinamik yapı için de özellikle KAYDIR fonksiyonu ile beraberinde son verinin bulunduğu satır değeri kullanılır. Ad Tanımlamalarının diğer bir kolaylığı da formül yazılmasında ve formülün daha anlaşılır olmasındaki özelliğidir.
2 - ilk madde de söz ettiğim gibi son veri yine ad tanımlaması ile (sv) tanımlanmış ve ben
Kod:
=MAK(EĞERHATA(KAÇINCI("zzzzz";Liste!$A:$A);SATIR(Liste!$A$1));EĞERHATA(KAÇINCI(9,9999E+307;Liste!$A:$A);SATIR(Liste!$A$1)))
formülünü kullanarak hesaplıyorum. Başka formüller de kullanılabilinir tabi ki.
Bu formülle ilgili sorunuza cevap olarak :
KAÇINCI("zzzzz";Liste!$A:$A) : Burada "zzzzz" Excel in tanıdığı alfabetik olarak en sondaki (maxi) METİN değerine karşılık gelir. KAÇINCI fonksiyonu ile A kolonunda bu değeri arıyoruz. Aradığımız METİN dir. Kolonda METİN değil de SAYI varsa , Kaçıncı fonksiyonu HATA verir. Bu HATA durumunda da EĞERHATA ile Satır(A1) yani 1 değeri üretilir. Burada satır (A1) için de şunu söylemeliyim. Ben özellikle Başlık kısmının satırın numarasını kullanıyorum burada. Çünkü ilk veri satırı bazen güncelliğini yitiriyor ve satır olarak silinebiliyor.
KAÇINCI(9,9999e307;Liste!$A:$A) : Burada da 9,9999e307 Excelin tanıdığı en büyük SAYI dır. Bu fonksiyon ile de A kolonunda en son SAYI değerinin kaçıncı sırada olduğunu arattırıyoruz.
SAYI olmayan A kolonunda bu fonksiyon HATA verecektir. EĞERHATA ile de HATA durumunda olması gereken değer üretilecektir.
Şöyle örnek verelim...
A kolonundaki satırlarda METİN ve SAYI karışık olsun... Arada boşluklar da olsun.. En son verinin bulunduğu satır 125. satır olsun ve de TARİH yazıyor olsun. 124. satır BOŞ ve 123. satırda da METİN olsun...
KAÇINCI("zzzzz";Liste!$A:$A) : METİNler için üreteceği değer 123 olacaktır. En son METİN 123. satırda
KAÇINCI(9,99999e307;Liste!$A:$A) : SAYIlar için üreteceği değer 125 olacaktır. En son SAYI 125. satırda
Formülümüzün başında da MAK(.....) olduğundan 123 ile 125 arasından da 125 olarak değer üretecektir. İşte son verinin bulunmasında kullanılan formülün açıklaması. Neden iki defa EĞERHATA kullanıldı. Onun açıklaması da böyle yapılabilirnir sanıyorum..

3 -
Hazırlamış olduğunuz Formül Lokasyon 1'e çıktıları yazarken neden 2. sırada ki lokasyonu es geçip 8. sıradaki lokasyon 2'ye yazıyor.
Kullandığımız formüle bakarsanız... Hem Bölge eşlenecek ve hem de Lokasyon eşlenecek. 2. sırada Bölge 1 Lokasyon 2 var... Oysa ki 8. satırda bölge 2 Lokasyon 2 var.. O nedenle Bölge 2 lokasyon 2 ye yazıyor. Çünkü Listenizde Bölge 1 Lokasyon 2 diye bir tanımlama yok. Olsaydı onu da yazacaktı.
kullandığımız formül ise şöyle : (Hem Bölge ve hem de Lokasyon eşleşmesi var)
=TOPLA.ÇARPIM((Bölge=$A14)*(Lok=$B14)*(çş=O$1)*(çıkış<>""))

4 -
Çalışmayan isimli bir hücremiz var aynı değerler işten ayrılan çalışanlar kısmında da var. Bu satırı kaldırdığımda çok fazla döngüsel hata aldınız uyarısı veriyor.
Bu sorudan bir şey anlayamadım maalesef.

İlave Not : Tablodaki Güncel Durumda Çalışmayanların sayısı ile Bu ay işten ayrılanların aynı şey olduğunu söylemeye çalışıyorsanız eğer yanılıyorsunuz. Çünkü Güncel durumda saydırılan Çalışmayanlar içerisinde listede bulunup çok daha önce işten ayrılmış olanların sayısı da mevcut. Diğeri ise sadece BU AY... Şöyle örnek verelim ... Bu ay işten ayrılan 10 kişi olsun... Geçen ayda da 15 kişi ayrılmıştı. Yani toplam çalışmayan (işi bırakan) sayısı 10 + 15 = 25 , bu ay ise sadece 10... Aradaki fark bu...
 
Son düzenleme:

Bwtunc

Altın Üye
Katılım
28 Kasım 2008
Mesajlar
156
Excel Vers. ve Dili
değişken
Altın Üyelik Bitiş Tarihi
15-08-2026
selam,
1 - Ad Tanımlamaları : Özellikle, dinamik yapı için kullanıyorum. Yani formülle bilgi alınacak Liste bugün için 200 satır olsun. Yarın bu 400 olabilir ya da 150 ye düşebilir. Her defasında formüllerde hücre referans adreslerinde değişiklik yapmaya gerek olmadan formül kullanılabilinir. Dinamik yapı için de özellikle KAYDIR fonksiyonu ile beraberinde son verinin bulunduğu satır değeri kullanılır. Ad Tanımlamalarının diğer bir kolaylığı da formül yazılmasında ve formülün daha anlaşılır olmasındaki özelliğidir.
2 - ilk madde de söz ettiğim gibi son veri yine ad tanımlaması ile (sv) tanımlanmış ve ben
Kod:
=MAK(EĞERHATA(KAÇINCI("zzzzz";Liste!$A:$A);SATIR(Liste!$A$1));EĞERHATA(KAÇINCI(9,9999E+307;Liste!$A:$A);SATIR(Liste!$A$1)))
formülünü kullanarak hesaplıyorum. Başka formüller de kullanılabilinir tabi ki.
Bu formülle ilgili sorunuza cevap olarak :
KAÇINCI("zzzzz";Liste!$A:$A) : Burada "zzzzz" Excel in tanıdığı alfabetik olarak en sondaki (maxi) METİN değerine karşılık gelir. KAÇINCI fonksiyonu ile A kolonunda bu değeri arıyoruz. Aradığımız METİN dir. Kolonda METİN değil de SAYI varsa , Kaçıncı fonksiyonu HATA verir. Bu HATA durumunda da EĞERHATA ile Satır(A1) yani 1 değeri üretilir. Burada satır (A1) için de şunu söylemeliyim. Ben özellikle Başlık kısmının satırın numarasını kullanıyorum burada. Çünkü ilk veri satırı bazen güncelliğini yitiriyor ve satır olarak silinebiliyor.
KAÇINCI(9,9999e307;Liste!$A:$A) : Burada da 9,9999e307 Excelin tanıdığı en büyük SAYI dır. Bu fonksiyon ile de A kolonunda en son SAYI değerinin kaçıncı sırada olduğunu arattırıyoruz.
SAYI olmayan A kolonunda bu fonksiyon HATA verecektir. EĞERHATA ile de HATA durumunda olması gereken değer üretilecektir.
Şöyle örnek verelim...
A kolonundaki satırlarda METİN ve SAYI karışık olsun... Arada boşluklar da olsun.. En son verinin bulunduğu satır 125. satır olsun ve de TARİH yazıyor olsun. 124. satır BOŞ ve 123. satırda da METİN olsun...
KAÇINCI("zzzzz";Liste!$A:$A) : METİNler için üreteceği değer 123 olacaktır. En son METİN 123. satırda
KAÇINCI(9,99999e307;Liste!$A:$A) : SAYIlar için üreteceği değer 125 olacaktır. En son SAYI 125. satırda
Formülümüzün başında da MAK(.....) olduğundan 123 ile 125 arasından da 125 olarak değer üretecektir. İşte son verinin bulunmasında kullanılan formülün açıklaması. Neden iki defa EĞERHATA kullanıldı. Onun açıklaması da böyle yapılabilirnir sanıyorum..

3 -
Kullandığımız formüle bakarsanız... Hem Bölge eşlenecek ve hem de Lokasyon eşlenecek. 2. sırada Bölge 1 Lokasyon 2 var... Oysa ki 8. satırda bölge 2 Lokasyon 2 var.. O nedenle Bölge 2 lokasyon 2 ye yazıyor. Çünkü Listenizde Bölge 1 Lokasyon 2 diye bir tanımlama yok. Olsaydı onu da yazacaktı.
kullandığımız formül ise şöyle : (Hem Bölge ve hem de Lokasyon eşleşmesi var)
=TOPLA.ÇARPIM((Bölge=$A14)*(Lok=$B14)*(çş=O$1)*(çıkış<>""))

4 -

Bu sorudan bir şey anlayamadım maalesef.

Sağolun sayenizde heybeme bir kaç bilgi daha koydum. Ad tanımlamaları ve diziler ilerleyen süreçte öğrenilmesi gerekilenler listesine koyacağım. Konu dışıda olsa birşey sormak istiyorum. Özellikle iç içe formül yazarken bazen tam yorumlayamıyorum mantığını. Youtube ve buradan sizin gibi değerli insanların yorumları karşılığı ilerletiyorum excel bilgimi. İç içe kullanmada bir öneriniz var mantığını kavrayabileceğim.



3) Bu durumda Formata göre Bölge ve lokasyon eşleşmesi tam uyumlu olduğunda formül aktif olarak çalışacak demektir. Ve yaşadığım problem ortadan kalkacak.

4) Hazırlamış olduğunuz dosyada ki d3, h3 gibi hücreleri bahsediyordum. Ama silmek yerine gizlediğim taktirde sorun kalkıyor ortadan. Fakat oraya koyma amacınızın farklı olabileceğini düşünüyorum bu nedene dilimin döndüğünce anlatmaya çalışayım:

h4 değeri f4 değeri ile aynı veya p11 değeri r11 değeri ile aynı. bu yüzden h3 veya p 3 gibi sütunları açmamızın artı bir nedeni var mı?

teşekkürler

İyi çalışmalar.
 
Katılım
31 Ocak 2012
Mesajlar
2,430
Excel Vers. ve Dili
Excel 2010 , Türkçe
Altın Üyelik Bitiş Tarihi
24.01.2019
Bir önceki mesajımda ilave not olarak ekledim açıklamasını...
Bir defa daha açıklayayım. Evet belgenizdeki çıkışlar sadece KASIM ayına ait olduğundan Çalışmayan ile Bu ay çıkış yapanların sayıları birbirlerine eşit.... Siz her ay böyle aylık döküm alacaksanız o zaman kaldırılabilinir. Bu durumda Çalışmayan kolonu fazlalık gibi görünebilir. Fakat listenizde sadece KASIM değil EKİM ayında çıkış yapanlar da olsaydı, ya da ARALIK ortasında aldınız ve hem KASIM hem de ARALIK çıkışları olsaydı, o zaman durum değişecekti. Bunu düşünerek, o kolonu ilave etmiştim.
 
Katılım
31 Ocak 2012
Mesajlar
2,430
Excel Vers. ve Dili
Excel 2010 , Türkçe
Altın Üyelik Bitiş Tarihi
24.01.2019
iç içe formüllere gelince, önce parça parça formüle edin ve sonra bütüne doğru gidin derim.
Örnek verelim...
SORU : A1 ve B1 de yazan sayıların MUTLAK farklarının 7 ye bölümündeki çıkan sayının Ondalıklı kısmı (virgülden sonraki) değeri nedir? Bu arada A1 , A2 den A6 ya kadar olan sayıların Minimumu ve B1 de B2 den B6 ya kadar olan sayıların Maksimumudur.

Yavaş yavaş yapalım..
A1 =MİN(A2:A6)
B1 =MAK(B2:B6)

MUTLAK farkın 7 ye bölümü x diyelim
x =MUTLAK(A1-B1)/7

x in ondalık değeri y diyelim
y = MOD(x;1)

Şimdi yerlerine koyalım

y = MOD(x;1) =MOD(MUTLAK(A1-B1)/7;1)
= MOD(MUTLAK(MİN(A2:A6)-MAK(B2:B6))/7;1)
 

Bwtunc

Altın Üye
Katılım
28 Kasım 2008
Mesajlar
156
Excel Vers. ve Dili
değişken
Altın Üyelik Bitiş Tarihi
15-08-2026
Bir önceki mesajımda ilave not olarak ekledim açıklamasını...
Bir defa daha açıklayayım. Evet belgenizdeki çıkışlar sadece KASIM ayına ait olduğundan Çalışmayan ile Bu ay çıkış yapanların sayıları birbirlerine eşit.... Siz her ay böyle aylık döküm alacaksanız o zaman kaldırılabilinir. Bu durumda Çalışmayan kolonu fazlalık gibi görünebilir. Fakat listenizde sadece KASIM değil EKİM ayında çıkış yapanlar da olsaydı, ya da ARALIK ortasında aldınız ve hem KASIM hem de ARALIK çıkışları olsaydı, o zaman durum değişecekti. Bunu düşünerek, o kolonu ilave etmiştim.

Bu çok iyimiş bu açıyla hiç düşünmemiştim. O zaman bu hücre tüm zamanların çıkan personelini bize verecek. Tek kelimeyle harika ve kesinlikle işime lazım olacak.



iç içe formüllere gelince, önce parça parça formüle edin ve sonra bütüne doğru gidin derim.
Örnek verelim...
SORU : A1 ve B1 de yazan sayıların MUTLAK farklarının 7 ye bölümündeki çıkan sayının Ondalıklı kısmı (virgülden sonraki) değeri nedir? Bu arada A1 , A2 den A6 ya kadar olan sayıların Minimumu ve B1 de B2 den B6 ya kadar olan sayıların Maksimumudur.

Yavaş yavaş yapalım..
A1 =MİN(A2:A6)
B1 =MAK(B2:B6)

MUTLAK farkın 7 ye bölümü x diyelim
x =MUTLAK(A1-B1)/7

x in ondalık değeri y diyelim
y = MOD(x;1)

Şimdi yerlerine koyalım

y = MOD(x;1) =MOD(MUTLAK(A1-B1)/7;1)
= MOD(MUTLAK(MİN(A2:A6)-MAK(B2:B6))/7;1)
Benzer bir soru alabilir miyim :)

Anladığımı düşünüyorum ama bunu sonuca dökmekte fayda var. Teşekkürler.
 
Katılım
31 Ocak 2012
Mesajlar
2,430
Excel Vers. ve Dili
Excel 2010 , Türkçe
Altın Üyelik Bitiş Tarihi
24.01.2019
soruyu siz sorun
 
Üst