• DİKKAT

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

Eğer topla makrosu

aydgur

Altın Üye
Katılım
31 Ekim 2005
Mesajlar
456
Excel Vers. ve Dili
Excel 2007 Türkçe
Sayfa 1 de ; C sütünunda vade tarihleri ve L sütününda da $ tutarları yazıyor.

Makro ile ; C sütünündaki vade tarihleri BUGÜN (her hesaplama yaptırdığımda yaptırdığım günü baz alsın )den büyükse L sütunündaki rakamları

R1 hücresine bir düğme ile yazdırmak istiyorum.
Mümkündür ama bunu kodunu bilen arkadaşlar var mıdır ?
 
Aşağıdaki kodu deneyiniz:
Kod:
Sub vade()
For i = 1 To Cells(Rows.Count, "C").End(3).Row
If Cells(i, "C") <> "" And IsDate(Cells(i, "C")) = True Then
    If Cells(i, "C") > Date Then
        [R1] = Cells(i, "L")
        GoTo 10
    End If
End If
Next
10:
End Sub
 
Eğer vadesi bugünden büyük olan tüm tutarların toplamını istiyorsanız makrosuz olarak aşağıdaki formülü kullanabilirsiniz:

Kod:
=ETOPLA($C$1:$C$24;">"&BUGÜN();$L$1:$L$24)

Bu işlemi yine makro ile yapmak isterseniz aşağıdaki kodu kullanabilirsiniz:

Kod:
Sub vadetoplam()
[R1] = ""
For i = 1 To Cells(Rows.Count, "C").End(3).Row
If Cells(i, "C") <> "" And IsDate(Cells(i, "C")) = True Then
    If Cells(i, "C") > Date Then
        [R1] = [R1] + Cells(i, "L")
    End If
End If
Next
End Sub
 
Teşekkür ederim Yusuf bey .Biraz uzun sürüyor , sütünları C7:C2500 ve L7:L2500
olarak düzenlemek istersem "C7:C2500" ve "L7:L2500" yapınca çalışırmı yada ne yapmak gerekir.
 
=ETOPLA($C$7:$C$2500;">"&BUGÜN();$L$7:$L$2500)

Formülü işinizi görmüyor mu?
 
Tabii işimi görür de makro ile araç çubuğuna tutturup her sayfada kullanabilirim diye düşünüyorum.
Birde yazdığı hücreye :. örneğin 1.500 USD yada 1.500 $ yazdırabilri misini ?
 
Kodların bitimine End Sub dan önce kırmızı satırı ekleyiniz.

[R1] = [R1] & " $"
End Sub

Yada

[R1] = [R1] & " USD"
End Sub
 
Sizede teşekkür ederim Mustafa bey
 
Nedense aşağıdaki kod doğru sonucu vermiyor:

Kod:
Sub formültoplam()
son = Cells(Rows.Count, "C").End(3).Row
[R1] = WorksheetFunction.SumIf(Range("C1:C" & son), ">" & Date, Range("L1:L" & son))
End Sub

ETOPLA yani formülle yaptığımda 154 bulunduğu toplamı bu kodla 45 buluyor. Neden bilemedim.
 
Yinde de teşekkür ederim . Sütün olarak da işimi gördü.
Fakat : 15000 USD yerine hücrede 150.00 USD yi nasıl yazdırabilirim.
Yani sayıyı binlik ve virgüllü biçimlendirmek.
 
Doğrudan hücreyi biçimlendirseniz olmuyor mu?
 
Bu makroyu araç çubuğuna bağladım ,istediğim sayfada çalıştırıyorum.
Bu yüzden hücre biçimlendirme yapmam , her seferrinde önce sayfada hücre biçimlendirme yapmamı gerektirdiği için zor geliyor.
 
Aşağıdaki şekilde deneyin:
Kod:
Sub vadetoplam()
[R1] = ""
Range("R1").NumberFormat = "#,##0.00 \$"
For i = 1 To Cells(Rows.Count, "C").End(3).Row
If Cells(i, "C") <> "" And IsDate(Cells(i, "C")) = True Then
    If Cells(i, "C") > Date Then
        [R1] = [R1] + Cells(i, "L")
    End If
End If
Next
End Sub
 
Geri
Üst