- Katılım
- 11 Mart 2005
- Mesajlar
- 3,151
- Excel Vers. ve Dili
- Office 2013 İngilizce
Merhaba,
Kendi kendi kredi kartım ve fatura ödemelerinin takibi için ekteki gibi bir tablo hazırladım;
Burada dosya açıldığı ve kapandığ zaman otomatik tarayarak, son ödeme tarihi gelmiş fatura ve kredi kartlarında yanında yazan banka adına göre;
Banka hesabında mevduatı tarayıp, eğer hesapta para varsa; oradan çekip ilgili fatura ve kredi kartını ödeyecek aşağıdaki gibi bir kod yazdım ama,
çok fazla If...End If blogu oluştu, bunun daha farklı bir yöntemi olabilir mi diye araştırma yapıyorum.
desteğiniz için şimdiden teşekkürler,
iyi Çalışmalar.
Kendi kendi kredi kartım ve fatura ödemelerinin takibi için ekteki gibi bir tablo hazırladım;
Burada dosya açıldığı ve kapandığ zaman otomatik tarayarak, son ödeme tarihi gelmiş fatura ve kredi kartlarında yanında yazan banka adına göre;
Banka hesabında mevduatı tarayıp, eğer hesapta para varsa; oradan çekip ilgili fatura ve kredi kartını ödeyecek aşağıdaki gibi bir kod yazdım ama,
çok fazla If...End If blogu oluştu, bunun daha farklı bir yöntemi olabilir mi diye araştırma yapıyorum.
desteğiniz için şimdiden teşekkürler,
iyi Çalışmalar.
Kod:
Sub OtomatikOdeme()
Dim WS As Worksheet
Dim dict As New Dictionary
Dim bank As String, tarih As Date
Dim mevduat As Double, bakiye As Double
Dim i As Integer, rw As Integer
Set WS = Sayfa4
For i = 5 To 11
dict.Add WS.Cells(i, 1).Value, i
Next i
For i = 23 To 43
tarih = WS.Cells(i, 5)
bank = WS.Cells(i, 6)
If tarih <= Date Then
If dict.Exists(bank) = True Then
rw = dict(bank)
mevduat = WS.Cells(rw, 4)
bakiye = WS.Cells(i, 4)
If bakiye > 0 Then
If bakiye < mevduat Then
WS.Cells(rw, 2) = WS.Cells(rw, 2) - bakiye
WS.Cells(i, 3) = WS.Cells(i, 3) + bakiye
Else
WS.Cells(rw, 2) = WS.Cells(rw, 2) - mevduat
WS.Cells(i, 3) = WS.Cells(i, 3) + mevduat
End If
End If
End If
End If
Next i
End Sub
Ekli dosyalar
-
20.6 KB Görüntüleme: 8