• DİKKAT

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

Koşula göre geriye doğru tarih bulma

  • Konbuyu başlatan Konbuyu başlatan d_teke
  • Başlangıç tarihi Başlangıç tarihi
Katılım
2 Mart 2011
Mesajlar
20
Excel Vers. ve Dili
2010 türkçe
Yardımcı olabilen çıkarsa çok sevinirim.
Şimdi, problemi burdan anlatmak sadece kafa karıştıracak.
Eklediğim excel'de anlatabildiğimi düşünüyorum.

Sorumun çözümünün formüllerle yapmanın bir yolu var mı?

şimdiden teşekkür ederim, iyi çalışmalar herkese...
 

Ekli dosyalar

Aşağıdaki formülü deneyin.
Kod:
=ÇOKETOPLA(C2:C500;A2:A366;"<=" & H2;A2:A500;">=" & K2)
 
Belirtilen Tarihten Geriye Doğru Toplama

Hocam, yanlış anlattım sanırım.

Ben "4" rakamını bulmak istemiyorum.

"22.07.2014" tarihini bulmak istiyorum.
 
Kullanıcı tanımlı fonksiyon ile yaptım. Formülü aşağıdaki şekilde kullanabilirsiniz.
Kod:
=TarihBul(H2;"c")

Aşağıdaki kodu bir Module içine yerleştirin.
Kod:
Function TarihBul(Hucre As Range, HangiSutun As String)
    Set Sira = Columns(1).Find(Hucre.Text)
    For i = Sira.Row To 2 Step -1
        x = Cells(i, HangiSutun) + x
        If x = 4 Then: TarihBul = Cells(i, 1): Exit Function
    Next
End Function
 
Eyvallah hocam, sağolasın, ama çalışmıyor !!!
 
Eki inceledim,

H2'ye tarih girince oluyor, ama H3'e rakam girince olmuyor.

Kullanıcı Tanımlı Fonksiyon nasıl yapılır bilmiyorum. Ama aşağıdaki yazılım tam olarak istediğim gibi çalışıyor.
İşte bana bunu Kullanıcı Tanımlı Fonksiyon ile FORMÜL haline getirebilirseniz problem çözüme kavuşacak.

Sub Emre()
Dim i%, a%, say As Byte
For i = Range("A65536").End(3).Row To 2 Step -1
If Cells(i, 1).Value = Range("H2").Value Then adres = Cells(i, 1).Row
Next i
For a = adres To 2 Step -1
say = say + Cells(a, 3).Value
If say = Range("H3").Value Then
Range("K2").Value = Cells(a, 1).Value
Exit For
End If
Next a
say = Empty: a = Empty: i = empty
End Sub
 
Kullanıcı tanımlı fonksiyon ile yaptım. Formülü aşağıdaki şekilde kullanabilirsiniz.
Kod:
=TarihBul(H2;"c")

Aşağıdaki kodu bir Module içine yerleştirin.
Kod:
Function TarihBul(Hucre As Range, HangiSutun As String)
    Set Sira = Columns(1).Find(Hucre.Text)
    For i = Sira.Row To 2 Step -1
        x = Cells(i, HangiSutun) + x
        If x = 4 Then: TarihBul = Cells(i, 1): Exit Function
    Next
End Function
. . .

Sy Hamitcan, H3 alanını sabit almış.
Şu şekilde revize ederek deneyin.

Kod:
Function TarihBul(Hucre As Range, [B][COLOR="Purple"]SAYI As Range,[/COLOR][/B] HangiSutun As String)
    Set Sira = Columns(1).Find(Hucre.Text)
    For i = Sira.Row To 2 Step -1
        x = Cells(i, HangiSutun) + x
        If x = [B][COLOR="purple"]SAYI[/COLOR][/B] Then: TarihBul = Cells(i, 1): Exit Function
    Next
End Function

Formül:
Kod:
=TarihBul(H2;H3;"c")

. . .
 
Aşağıdaki dizi formülünü deneyiniz.

Kod:
=DOLAYLI("A"&BÜYÜK(EĞER(DOLAYLI("C2:C"&KAÇINCI(H2;A:A;0))=1;SATIR(DOLAYLI("C2:C"&KAÇINCI(H2;A:A;0))));H3))
 
Alternatif;

Kod:
Sub Emre()
    Dim i%, a%, say As Byte
    For i = Range("A65536").End(3).Row To 2 Step -1
        If Cells(i, 1).Value = Range("H2").Value Then adres = Cells(i, 1).Row
    Next i
    For a = adres To 2 Step -1
         say = say + Cells(a, 3).Value
        If say = Range("H3").Value Then
            Range("K2").Value = Cells(a, 1).Value
            Exit For
        End If
    Next a
    say = Empty: a = Empty: i = empty
End Sub
 
M2:M24 aralığına yıl içerisindeki tüm resmi ve dini bayram tatillerinin tarihlerini girin ve bu formülü kullanın;
Kod:
=İŞGÜNÜ(H2;-(H3);M2:M24)
 
Arkadaşlar sağolun, problemime kısa sürede çözüm bulduğunuz için.

[ yüzlerce hücreye uygulayacağım için, boyut olarak hangisi en düşük olursa onu kullanacağım :) ]

Tekrar teşekkür ederim, herkese iyi çalışmalar...
 
Korhan Hocam, bu işi geriye doğru değil de ileriye doğru da yapabilir miyiz?
Yani tarih ve rakam vereceğiz, bu sefer rakamı tarihten çıkartmayacak, toplayacak.
Mümkün müdür? (tabi yine formül ile)
 
Aşağıdaki dizi formülü deneyiniz.

Kod:
=DOLAYLI("A"&KÜÇÜK(EĞER(DOLAYLI("C"&KAÇINCI(H2;A:A;0)&":C1000")=1;SATIR(DOLAYLI("C"&KAÇINCI(H2;A:A;0)&":C1000")));H3))
 
Çok teşekkür ederim Korhan Hocam, sorunsuz çalışıyor. Sayende büyük bir engeli daha aştım, tekrar tekrar teşekkür ederim, herkese iyi çalışmalar...
 
Geri
Üst