• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Cumartesi gününün işgünü olarak alınması

  • Konbuyu başlatan Konbuyu başlatan Shaman
  • Başlangıç tarihi Başlangıç tarihi
Katılım
9 Şubat 2007
Mesajlar
6
Excel Vers. ve Dili
excel 2003
iyi günler;
biliyorsunuz workday fonksiyonu c.tesi ve pazar günlerini iş günü olarak görmüyor.
benim;
1. Cumartesi günlerini
2. Cumartesi ve pazar günlerini iş günü olarak görecek fonksiyonlara ihtiyacım var.
Yardımcı olursanız sevinirim.
İlginiz için şimdiden teşekkür ederim.
 
iyi günler
öncelikle form kurallarını okuyunuz
sonra öğrenmek istediğiniz konuyu en iyi anlayacağımız şekilde anlatmalısınız ben şahsen ne anlatmak istediğinizi anlayamadım
iyi çalışmalar kolay gelsin
 
Yeniden iyi akşamlar;
Her ne kadar hangi noktada forum kurallarını ihlal ettiğimi anlamasamda lütfen üzüntülerimi kabul ediniz.

sorumu yeni baştan anlatmaya çalışayım.

belirli bir tarihten başlayarak (örneğin 30.03.2007), örneğin 10 iş günü sürecek bir işin hangi tarihte biteceğini hesaplamak istiyorum. "Workday" fonksiyonunu kullanarak hesaplama yaptığımda işin bitiş tarihini 13.04.2007 olarak buluyorum. Çünkü bu fonksiyon cumartesi ve pazar günlerini iş günü olarak görmüyor.
Eğer cumartesi gününü iş günü olarak alsak işin bitiş tarihinin 10.04.2007, cumartesi ve pazar günlerini iş günü olarak alsak işin bitiş tarihinin 08.04.2007 olarak bulunması gerekiyor.
benim istediğim yukarıda anlatmaya çalıştığım işlemlerin iki ayrı (c.tesi'yi iş günü gören ve c.tesi ve pazar günlerini işgünü olarak gören) fonksiyonlar ile yapılıp yapılamayacağını öğrenmek.

iyi çalışmalar.
 
evet bende aynı sornla muzdarıbım bu konuda bılgısı olan bır arkadas varmı.
bunu formulle cozebılırmıyız veya makromu yaratmamız gerekıcek
 
Merhaba.
Örneğin A1 Hücresinde 30.03.2007 olsun.
B1 Hücresine 10 yazınız.C1 Hücresine =A1+B1 yazınız.:cool:
 
verdiğiniz yanıt için teşekkür ederim.
eğer söz konusu dönem başka bir tatil içermiyorsa C.tesi ve pazar günlerinin hesaba katılması bu kadar basit olurdu.
ancak bildiğiniz gibi "workday" ayrı bir tatil seriside içerir.
iyi çalışmalar.
 
iyi günler;
biliyorsunuz workday fonksiyonu c.tesi ve pazar günlerini iş günü olarak görmüyor.
benim;
1. Cumartesi günlerini
2. Cumartesi ve pazar günlerini iş günü olarak görecek fonksiyonlara ihtiyacım var.
Yardımcı olursanız sevinirim.
İlginiz için şimdiden teşekkür ederim.

Ekteki örneği inceleyin.

Bir de;

Aşağıdaki linkte eklediğim örneği inceleyin. O da size fikir verir. Çünkü orada da belirli iki tarih aralığı arasında istediğimiz günün sayısını veren bir formül vardır.

http://www.excel.web.tr/showthread.php?t=29803


..
 

Ekli dosyalar

Son düzenleme:
sorunuma zaman ayırdığınız ve yanıtınız için teşekkür ederim.
ancak işe başlama ve işlem süresi örnek olarak verilmişti. işlem gününü 15 yaptığımızda ben hatalı sonuç buluyorum.
öte yandan mevcut yapıda cumartesi kolonuna 6 yazdığımızda iş bitimi olarak 12.04.2007 veriyor. işlemi elle yaptığımızda ise sonucun 11.04.2007 olması gerekiyor.
yine, bu iki tarih aralığında örneğin resmi bir bayram olması formülü kullanılamaz kılıyor.
bilgilerinize,
teşekkür ederim.
 
Ben size bir yol gösterdim. Siz bunu geliştireceksiniz.

Cumartesi ve ve Pazar günü işgünü sayılması durumunda İŞGÜNU formülünü kullanırız. Bu Formülün

Sözdizimi:

İŞGÜNÜ(başlangıç_tarihi,günler,tatiller)

Tatile yani bayrama gelen kaç tarih varsa siz bunu bu formülde kullanarak tatilleri burada hesaba katacaksınız.

Bunu saptadıktan sonra bu tarih aralığında kaç tane Cumartesi gününün bulunduğunu hesaplamaktır. Bunu da aşağıdaki dizi formülle buluyoruz.

=TOPLA(EĞER(HAFTANINGÜNÜ(B2-1+SATIR(DOLAYLI("1:"&NSAT(C2-B2)+1)))=D2;1;0))

Burada D2'de yer alan 6 cumartesilerin parametresidir. Yani 6 yazarsak Cumartesileri, 1 yazarsak pazartesileri buluyoruz.

D2'ye 6 yazıp formülü uyguladığımızda bu tarih aralığında kaç cumartesiyi işgünü sayacağımız çıkar ve bunu İşgünü formülünden düştüğümüzde Cumartesi günlerinin de işgünü sayıldığı durumu buluruz.

Durumun mantığı bu.

..
 
Son düzenleme:
Merhaba,

Verdiğiniz tarih ve işin bitim süresini dikkate alarak, belirttiğiniz alandaki Tatil Günlerini Sayan bir fonksiyon yazmaya çalıştım. Umarım yardımcı olur.

Kod:
Public Function Tatil_Gunu_Bul(Başlangıç_Tarih As Date, Gün_Sayısı As Integer, Tatil_Günleri As Range)
Dim Bitiş_Tarihi As Date
Bitiş_Tarih = Başlangıç_Tarih + Gün_Sayısı
For Each Hücre In Tatil_Günleri
If Hücre >= Başlangıç_Tarih And Hücre <= Bitiş_Tarih Then Adet = Adet + 1
Next
Tatil_Gunu_Bul = Adet
End Function

Ekteki dosyayı inceleyiniz.
 
Sayın Yuttaş,
Sayın Yesertener,

Her ikinize de yardımlarınız için teşekkür ederim.
Saygılarımla.
 
Ben size bir yol gösterdim. Siz bunu geliştireceksiniz.

Cumartesi ve ve Pazar günü işgünü sayılması durumunda İŞGÜNU formülünü kullanırız. Bu Formülün

Sözdizimi:

İŞGÜNÜ(başlangıç_tarihi,günler,tatiller)

Tatile yani bayrama gelen kaç tarih varsa siz bunu bu formülde kullanarak tatilleri burada hesaba katacaksınız.

Bunu saptadıktan sonra bu tarih aralığında kaç tane Cumartesi gününün bulunduğunu hesaplamaktır. Bunu da aşağıdaki dizi formülle buluyoruz.

=TOPLA(EĞER(HAFTANINGÜNÜ(B2-1+SATIR(DOLAYLI("1:"&NSAT(C2-B2)+1)))=D2;1;0))

Burada D2'de yer alan 6 cumartesilerin parametresidir. Yani 6 yazarsak Cumartesileri, 1 yazarsak pazartesileri buluyoruz.

D2'ye 6 yazıp formülü uyguladığımızda bu tarih aralığında kaç cumartesiyi işgünü sayacağımız çıkar ve bunu İşgünü formülünden düştüğümüzde Cumartesi günlerinin de işgünü sayıldığı durumu buluruz.

Durumun mantığı bu.

..


Peki Cumartesi, Pazar ve Resmi Tatil günlerinin hepsini hariç tutmak için nasıl formül bir oluşturmamız gerek.
 
Geri
Üst