• DİKKAT

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

Çözüldü izin rapor durumunda günsay formülü

Katılım
9 Eylül 2010
Mesajlar
879
Excel Vers. ve Dili
2016&2019&2021 TR
Değerli hocalarım personel izniyle ilgili yardımınıza ihtiyacım var Günsay formülü ile 1 eksik buluyorum. Ekli dosyada gerekli açıklamayı yaptım. Mümkünatı var ise kod ile yardımcı olabilir misiniz.
Kurum bilgisayarları dosya çıkışını engelliyor. Maalesef dosya yüklemesi yapamadım.




23.09.2022​

=BUGÜN()

























Başlama

Bitiş

Gün/Toplam

istenilen sonuç



22.09.2022​

28.09.2022​

6​

2/7

S sütunundaki sonuçlar ilk değer izinde kaçıncı günü, ikinci değer ise toplam izin süresi.

23.09.2022​

02.10.2022​

9​

1/10

kod ya da formülle çözüm olabilir.

15.09.2022​

29.09.2022​

14​

9/15



22.09.2022​

29.09.2022​

7​





19.09.2022​

28.09.2022​

9​





17.09.2022​

26.09.2022​

9​



R sütunda Personelin izni 22sinde başlamış 28inde bitiyor. 7 gün izin almış, günsay 6 veriyor. 7 veren formüle ya da koda ihtiyacım var.

21.12.2018​

26.12.2018​

5​





16.09.2022​

23.09.2022​

7​



S sütunu açıklama için koydum tüm hesaplamalar R sütununda da yapılabilir. Mümkün değilse S sütunu da kalabilir.
 
Merhaba,

2/7 sonucunun nasıl olduğunu anlayamadım fakat, bitiş ve başlangıç gününü dahil ediyorsanız kullandığınız formülün sonuna +1 ekleyebilirsiniz.

=GÜNSAY(B2;A2)+1

Yada

=B2-A2+1

Gibi.
 
Yanıt için teşekkürler hocam. 2/7 yi açıklayayım. Ayın 22 sinde izne çıkmış bugün ayın 23 ü. İznin ikinci günü yani 2. 22 sinden 28 i dahil izne ayrılmış toplam izin gün sayısı 7. Yardıkcı sütun ile çözebildim sizin mantığı kullanarak ama pekişlevsel olmadı. Yinede teşekkürler hocam.
 
İstediğiniz bu mu?
Veriler A2 ve B2 de düşünüldü.

=BUGÜN()-A2+1&"/"&B2-A2+1

.
 
Budur hocam. Çok teşekkürler. Peki bunu kod olarak yazabilmemiz mümkün müdür.
 
Çalışma sayfasının kod bölümüne kopyalayınız.
A ve B sütunlarına veri girince C sütununa istediğinizi değeri yazar.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("A:B")) Is Nothing Then Exit Sub
    With Target
        If .Count > 1 Then Exit Sub
        If .Row < 2 Then Exit Sub
        Cells(.Row, "C").NumberFormat = "@"
        If Cells(.Row, "A") <> "" And Cells(.Row, "B") <> "" Then
            Cells(.Row, "C") = Date - Cells(.Row, "A") + 1 & "/" & Cells(.Row, "B") - Cells(.Row, "A") + 1
        Else
            Cells(.Row, "C") = ""
        End If
    End With
End Sub
 
Teşekkürler hocam zihninize sağlık. Butona atasak kodlarda düzenleme gerekir mi? Veriyi elle girmiyorum. Sistemden indirdiğimiz dosyadan veri çekerek yapıyoruz işlemi. Pc başında olsam deneyecektim ama mobilden bağlanıyorum.
 
Buton için:
Kod:
Sub test()
    
    Dim i As Long
    
    Application.ScreenUpdating = False
    Range("C2:C" & Rows.Count) = ""
    Range("C2:C" & Rows.Count).NumberFormat = "@"
    
    For i = 2 To Cells(Rows.Count, "A").End(xlUp).Row
        If Cells(i, "A") <> "" And Cells(i, "B") <> "" Then
            Cells(i, "C") = Date - Cells(i, "A") + 1 & "/" & Cells(i, "B") - Cells(i, "A") + 1
        End If
    Next i
    
     Application.ScreenUpdating = True
    
End Sub
 
Hocam zihninize sağlık. Çok teşekkürler.
 
Geri
Üst