• DİKKAT

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

kontrol programı

Katılım
24 Ocak 2007
Mesajlar
27
Excel Vers. ve Dili
excel 2003
excelde makro oluşturarak şöyle bişey yapmam gerekiyor. size basitçe özetliyeyim. elimde 100 lira param var hergün de 100 lira kazanıyorum. benm 03.07.07 tarihine 100 lira 04.07.07 tarihine 900 lira ödemm var. bu ödemleri o tarihlerde yapabilecekmiyim onu kontrol edecek ve eğer o tarihte yapamayacaksam hangi tarihte yapabilirim onu bulacak. yardım ederseniz sevinrim.
 
Merhaba,

Umarım sorunuzu doğru anlamışımdır. Ekteki dosyayı inceleyiniz

Kod:
Public Sub Hesapla()
Dim i As Date
i = [C2]
Kazanc = [B2]
Borc = [E2]
Range("F2:H2").ClearContents
Para = [A2]
Do While i < [D2]
    Para = Para + Kazanc
    i = i + 1
Loop
[F2] = Para
[G2] = i
If Para <= Borc Then
    Do While Para <= Borc
        Para = Para + Kazanc
        i = i + 1
    Loop
End If
[G2] = i
[H2] = Para
End Sub
 
evet doğru anlamışsınız da başka bi sorun var. bu bir satırlık kodun çok sayıda satır için yapılması gerekiyor. kaç satır olacağı da bilinmiyor. çünkü başka bi dosyadan alınacak ve kaç satır gelirse hepsi için aynı işlem yapılmalı. tabi bu arada bütün işlemler kontrollü ilerlemeli. bunu da yapabilirseniz dileyin benden ne dilerseniz:dua: :p
 
Sayın priorix,

Sorunuzu örnek dosya ile destekleyiniz, o zaman daha çabuk yanıt alırsınız.
 
ekte anlatmaya çalıştım yardımcı olabilirseniz sevinirim.
 
Sayın priorix,

Tam kontrolünü yapamadım, sonucunu sizden bekliyorum.
 
aşağıdaki kodu dener misiniz >>
Kod:
Sub hesapla()
For x = 2 To [a65536].End(3).Row + 1
If Cells(x, 3) < Cells(x, 4) Then
Cells(x, 6) = Cells(x, 1) + (Cells(x, 4) - Cells(x, 3)) * Cells(x, 2)
Cells(x, 7) = Cells(x, 4) + (Cells(x, 5) - Cells(x, 6)) / Cells(x, 2)
Cells(x, 8) = (Cells(x, 7) - Cells(x, 3)) * Cells(x, 2) + Cells(x, 1)
End If
Next
End Sub
 
ya ben beceremiyorum ya kodlarda sorun var. necdet bey sizin gönderdiğiniz kodda 100 lira bile ödeyecek olsa bugünün tarihi 3.07 olmasına rağmen bitiş tarihi olan 10.07 de ödeyebileceğini gösteriyor.
emre bey sizin gönderdiğiniz kodda
Cells(x, 7) = Cells(x, 4) + (Cells(x, 5) - Cells(x, 6)) / Cells(x, 2)
kısmında hata veriyor. nedenini anlamadım.
benim tek sorunum satır sayısı belli olmadan son satıra kadar aynı işlemi tekrarlatmak. buna çözüm bulursak herşey hallolmuş olacak sanırım. teşekkürler yardımlarınız için..
 
emre bey eğer borç sütununda bütün borçların 100 olduğunu varsayarsak ödeyebileceği tarih 29.06 ya kadar düşüyo bugünün tarihi 03.07 olmasına rağmen:)
 
sn priorix başlangıç tarihini küçük verirseniz küçük çıkması normal tam olarak sorununuzu anlayamadım...
 
Sayın emrexcel123 formülleştirerek işi kısaltmış, bende gereksiz yere uzatmışım.

Sayın emrexcel123'ün makrolu çözümünü fonksiyonlu çözüm haline getirdim. Yararlı olabilir.
 
İlk mantığıma göre önerdiğim çözümü (uzun da olsa) düzeltilmiş haline ekleyim.
 
Geri
Üst