İzin Takip Programı

Katılım
20 Mart 2006
Mesajlar
99
Excel Vers. ve Dili
OFFICE-2003 TÜRKÇE
bizim istediğimiz örneğin TextBox1 içine yazılan izin başlama tarihi 01.01.2009 kullanılan izin süreside TextBox2 = 70 gün olsun Göreve Başlama Tarihi TextBox3 =11.03.2009 olur şimdi Ocak ayına TextBoxa 31 Şubat ayına TextBoxa 28 ve Mart ayınada TextBoxa 11 gün olarak atmasını istiyoruz form üzerinde TextBoxlarda hesaplama yapsın istiyoruz
 
Katılım
20 Mart 2006
Mesajlar
99
Excel Vers. ve Dili
OFFICE-2003 TÜRKÇE
geçen hafta çözüm bulamadık bu hafta tekrar Arkadaşlar yukarıda 2. mesajda yapmak istediğim konusunda yardımcı olursanız sevinirim
 
Katılım
20 Mart 2006
Mesajlar
99
Excel Vers. ve Dili
OFFICE-2003 TÜRKÇE
Kardeş elinize sağlık güzel olmuş ,size zahmet verdik şu düzeltmeler olursa istediğimiz sonuca ulaşılır.
gönderdiğiniz dosyada örneğin 01.01.2009 tarihinden itibaren 59 gün izin veya rapor alırsa ocak ayına 31 şubat ayına 28 gün atıyor
ancak
1- 01.01.2009 tarihinden itibaren 90 gün izin veya rapor alan pesonele ocak ayına 31 Şubat ayına 28 gün ve mart ayına ve diğer aylara birşey atmıyor
2- 10.01.2009 itibaren 30 gün izin alan personele ocak ayına ait 21 gün ve şubat ayına ait 9 gün atması gerekirken ocak ayına 30 gün atıyor
3- 01.01.2009 tarihinden itibaren 5 gün izin alan ve 06.01.2009 tarihinden itibaren de 5 gün izin alan personele ocak ayı olarak 10 gün atması lazım atmıyor
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,799
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
ben bunu ancak bu hale getirdim 2 ay dan sonraki izinleri 3 aya atmıyor ancak 2 ayda ve 3 ayda izin varsa bunları görüyor başka türlü olmuyor
 
Katılım
20 Mart 2006
Mesajlar
99
Excel Vers. ve Dili
OFFICE-2003 TÜRKÇE
Aslında Aşağıdaki formülü fonksiyon olarak düzenlesek sonuca ulaşmış olacağız

EĞER(MAK(0;(MİN(CY3;TARİH(YIL($GX$2);AY($GX$2)+1;0))-MAK(CW3;$GX$2)+1))=0;"";MAK(0;(MİN(CY3;TARİH(YIL($GX$2);AY($GX$2)+1;0))-MAK(CW3;$GX$2)+1))))

Yukarıdaki formülün açıklaması

CY3= İzin Bitiş tarihi
$GX$2 = 01.01.2009

CW3 İzin Başlama Tarihi
 
Katılım
20 Mart 2006
Mesajlar
99
Excel Vers. ve Dili
OFFICE-2003 TÜRKÇE
'EĞER(MAK(0;(MİN(CY3;TARİH(YIL($GX$2);AY($GX$2)+1;0))-MAK(CW3;$GX$2)+1))=0;"";MAK(0;(MİN(CY3;TARİH(YIL($GX$2);AY($GX$2)+1;0))-MAK(CW3;$GX$2)+1))))

dün akşam yukarıdaki formülü aşağıdaki şekilde uyarlamaya çalıştım olmadı
formül çalışmıyor

'T4=IF(MAK(0;(MİN(T16;DATE(YEAR(01.01.2009);MONTH(01.01.2009)+1;0))-MAK(T18;01.01.2009)+1))=0;"";MAK(0;(MİN(T16;DATE(YEAR(01.01.2009);MONTH(01.01.2009)+1;0))-MAK(T18;01.01.2009)+1)))
 
Katılım
20 Mart 2006
Mesajlar
99
Excel Vers. ve Dili
OFFICE-2003 TÜRKÇE
siteden aşağıdaki şekilde bir makro buldum ama izin formuna uyarlayamadım yardımcı olacak arkadaşlara şimdiden teşekürler

Sub Hesapla2008()
Const s1 As String = _
"=SUMPRODUCT((TEXT(Tarih,""aaaa"")=R2C)*(YEAR(Tarih)=R1C3)*(Adi_Soyadi=RC1)*(Mesai))"
basla = Time
Application.ScreenUpdating = False
Range("C3:N" & [C65536].End(3).Row + 1).ClearContents
Dim iLastrow As Long
iLastrow = Cells(Rows.Count, "A").End(xlUp).Row
For i = 3 To [A65536].End(xlUp).Row
Cells(i, "C").FormulaR1C1 = s1
Cells(i, "D").FormulaR1C1 = s1
Cells(i, "E").FormulaR1C1 = s1
Cells(i, "F").FormulaR1C1 = s1
Cells(i, "G").FormulaR1C1 = s1
Cells(i, "H").FormulaR1C1 = s1
Cells(i, "I").FormulaR1C1 = s1
Cells(i, "J").FormulaR1C1 = s1
Cells(i, "K").FormulaR1C1 = s1
Cells(i, "L").FormulaR1C1 = s1
Cells(i, "M").FormulaR1C1 = s1
Cells(i, "N").FormulaR1C1 = s1
Next i
Range("C3:N" & [C65536].End(3).Row) = Range("C3:N" & [C65536].End(3).Row).Value
bitis = Time
Application.ScreenUpdating = True
CreateObject("WScript.Shell").Popup _
"Raporlandı.." & Chr(13) & Chr(13) & "Sorgulama Süresi: " & Format(bitis - basla, "hh:mm:ss"), 1, "UYARI", vbInformation
End Sub
 
Katılım
20 Mart 2006
Mesajlar
99
Excel Vers. ve Dili
OFFICE-2003 TÜRKÇE
'2 gün uğraştım ançak ocak ayı konusunda ip ucu buldum izin başalama tarih ocak ayına aitse diğer aylara düzenli atıyor , ama izin başlama tarihi subat ayı ve diğer aylar ise düzen bozuluyor . ustalar bu konuya el atarlarsa sevinirim.

Sub tarih()
Dim ocak1 As Date
Dim ocak2 As Date
Dim subat1 As Date
Dim subat2 As Date
ocak1 = "01/01/2009"
ocak2 = "31/01/2009"
subat1 = "01/02/2009"
subat2 = "28/02/2009"
mart1 = "01/03/2009"
mart2 = "31/03/2009"
'OCAK AYI İÇİN T1
If T1 >= ocak1 And T3 <= ocak2 Then
T4 = T2
Else
T4 = Int(33 - Val(T1))
If (T2 - T4) <= 28 Then T5 = (T2 - T4) 'Şubat ayına atar
If (T2 - T4) > 28 Then T5 = 28

If T2 - 59 <= 31 Then T6 = (T2 - 59) 'Mart ayına atar
If T2 - 59 > 31 Then T6 = 31

If T2 - 90 <= 30 Then T7 = (T2 - 90) 'Nisan ayına atar
If T2 - 90 > 30 Then T7 = 30

If T2 - 121 <= 31 Then T8 = (T2 - 121) 'Mayıs ayına atar
If T2 - 121 > 31 Then T8 = 31

Exit Sub
End If
End Sub


Dosyayı ekte gönderiyorum
 

Ekli dosyalar

Katılım
20 Mart 2006
Mesajlar
99
Excel Vers. ve Dili
OFFICE-2003 TÜRKÇE
Ustalar neredeyse iki hafta oldu ancak konuyu çözüme kavuşturamadık
Yardımlarınızı bekliyorum
 
Üst